- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
tokyo cabinet key-value数据库扩展及其应用-张宴.pdf
2010-04-02
张宴
Http://
传统MySQL数据库的性能问题
单表的记录数不断增加,查询效率降
低。
Web 2.0应用的写操作越来越多,传
统的MySQL一主库多从库、读写分离
模式作用有限。
随着并发请求数增长,MySQL性能急
剧下降。
MySQL 5.5 m2数据库压力测试
Dell R900 system ( 16 cores, 32GB of RAM, FusionIO + RAID10 )
Tokyo Cabinet及Tokyo Tyrant 简介
TC (Tokyo Cabinet )是日本人平林幹雄开发的一款
Key-Value 键值数据库,该数据库读写非常快,哈希
模式写入100万条数据只需0.402秒,读取100万条数据
只需0.334秒。
TT (Tokyo Tyrant )是由同一作者开发的Tokyo
Cabinet 数据库网络接口。它拥有自己的协议,并支
持Memcached兼容协议,也可以通过HTTP协议进行
数据交换。哈希数据库读写速度大约在50000次/秒。
TC和TT 目前运行在日本最大的SNS网站MIXI,在国内
也有大量的生产环境应用。
TT、Memcached、MySQL比较
10000线程时,写入性能
TT、Memcached、MySQL比较
10000线程时,读取性能
Tokyo Cabinet的数据库类型
TCHDB 哈希数据库
TCBDB B+Tree数据库
TCFDB 定长数据库
TCTDB 表格数据库
TCMDB 内存哈希数据库
TCNDB 内存B+Tree数据库
TCHDB
TCHDB哈希数据库的优化
很多人反应TT/TC插入数据超过一定数量后,性能会大幅度下降?
先对TC做个测试:
写入100万条:tchtest write test.tch 1000000
时间: 0.732秒速度:1366120条/秒
写入200万条:tchtest write test.tch 2000000
时间: 1.718秒 速度:1164144条/秒
写入500万条:tchtest write test.tch 5000000
时间: 21.529秒 速度:232244条/秒
从测试来看,写入500万条数据,性能确实降低。但是,原因呢?
TCHDB哈希数据库的优化
修改参数后,再测试:
写入100万条:tchtest write -xm 536870912 test.tch 1000000 5000000
时间: 0.580秒速度:1724137条/秒
写入200万条:tchtest write -xm 536870912 test.tch 2000000 5000000
时间: 1.105秒 速度:1809954条/秒
写入500万条:tchtest write -xm 536870912 test.tch 5000000 5000000
时间: 2.737秒速度:1826817条/秒
可见,性能提升了不少,随着写入数据量地增加,速度依旧不减。
TCHDB哈希数据库的优化
关键参数(C API):
bool tchdbsetxmsiz(TCHDB *hdb, int64_t xmsiz);
Xmsiz指定了TCHDB 的扩展MMAP 内存大小,默认值为
也就是64M,如果数据库文件超过64M,则只
有前部分会映射在内存中,所以写入性能会下降。
其他参数(C API) :
bool tchdbtune(TCHDB *hdb, int64_t bnum, int8_t apow,
int8_tfpow , uint8_t opts);
bnum指定了bucke
您可能关注的文档
- BZ-030饮料生产企业.doc
- bz001005027肥料标识 内容.pdf
- bz001009021复溷肥料钾的测定.pdf
- bz001010798.pdf
- bz001015426.pdf
- bz001015755.pdf
- bz001016257复溷肥料有效磷的测定.pdf
- bz001021865.pdf
- BZ002016252.pdf
- BZ002016889燃气改装要求.pdf
- Torque_Only_Sensor_Bourns_April_2016.pdf
- UG_Cam 使用手册.pdf
- unit 8 career.ppt
- Virtual Machine Tool 虚拟数控机床.pdf
- WD-WB-BZ-053.pdf
- wheel bearing Osborn load_runner.pdf
- Win7系统中Office(2016或者2016)_Word已停止工作”的终极解决方案.doc
- Women in cabinet and public health spending_ evidence across countries.pdf
- world bearing Demand 2009(freedonia).pdf
- world bearing Demand 2016(freedonia).pdf
文档评论(0)