-
实用的分布式KV数据库TTSERVER
发表于 2009年07月15日 没有评论关系型数据库在海量数据存储的互联网应用中,经常面临挑战:
- 没有KEY-VALUE的快速HASH查找能力;
- 访问接口不支持HTTP;
- 读写的TPS不够高;
从GOOGLE的BIGTABLE开始,KEY-VALUE类型的数据库引起了越来越多的开发人员注意。互联网项目中也越来越多的出现了KV结构的数据库。
随着分布式技术需求的增加,我们在选择数据库的时候希望数据库本身能支持比较好的分布式。当增加机器或减少机器的时候也能快速的进行。
TOKYO TC是一个很好的DBM,在TODYO TT的支持下,TC可以实现很好的分布式存储和数据的查找,加上TD,还可以实现分布式搜索。
TT的性能很不错,我在一台普通的1U服务器上测试了一下。
[root@www www]# /usr/local/bin/tcrmttest write -port 11211 127.0.0.1 1000000
<Writing Test>
host=127.0.0.1 port=11211 tnum=1 rnum=1000000 nr=0 ext= rnd=0
……………………. (00100000)
……………………. (00200000)
……………………. (00300000)
……………………. (00400000)
……………………. (00500000)
……………………. (00600000)
……………………. (00700000)
……………………. (00800000)
……………………. (00900000)
……………………. (01000000)
record number: 1000001
size: 32430400
time: 46.946
ok
主机LOAD最高达到1.6。测试机器是1G内存2GCPU。
TT非常适合用在Memcache用的地方。
TT也有一些不足,比如数据量增长了,一台TT SERVER的性能不能支持。我现在要加一台机器,原来TT服务器上的数据就需要手工导出到另一台机器上。如果数据的分离通用MOD的方式,那么应用层就需要修改。这时候就需要作一个中间层。
如果TT server有一台DONW机,那么所有TT SERVER的CACHE将重新分配,这时会引起性能的下降。这种情况下一致性HASH会好一些。



最近评论