为了账号安全,请及时绑定邮箱和手机立即绑定

[转]KV存储的对比

标签:
Go

本文转自饿了么的高级架构师陈东明(cadem)发布于云栖社区的文章: KV存储的对比。作者还整理了另外一篇文章: 存储系统的分类,列举了常见的一些kv存储模型和实现。

最近对各种KV存储进行一个比较,从存储引擎到存储引擎的类型,到单机版的kvstore,再到分布式kvstore集群。

存储引擎的类型

类型全称
btree
LSHLog-Structured Hash Table
LSMLog-Structured Merge Tree
FractalTree分型树

存储引擎

Welcome to Oschina Tools website

类型名称语言备注应用在___dbengine排名出品
berkeleyDBBTREE, HASH, QUEUE, RECNOC,Java

No.9oracle
Wiredtigerbtree, LSMC
mongodbNo.24WiredTiger/mongodb
Tokyo Cabinet /Kyoto Cabinetb+tree,hash table

nmdb,Kyoto TycoonNO.27/No.36FAL Labs
LMDBbtreeC
OpenLDAP
symas
BoltDBbtreeGoLMDB的go版本


leveldbLSMc++

No.15google
goleveldbLSMGoleveldb的go版本

个人
levigoLSMGoGo wrapper for LevelDB

个人
rocksdbLSMc++,java

No.18facebook
gorocksdbLSMGoGo wrapper for RocksDB

个人
mongo-rocksLSMC++
RocksDB Storage Engine Module for MongoDB
mongo partner
bitcastLSHC
beansdb,riak
basho
PerconaFTFractalTreeC++Mysql存储引擎之TokuDBpercona


单机kvstore

类型名称采用的存储引擎语言出品主从复制github star
kv对nmdbqdbm, berkeley db, tokyo cabinet,tdbC个人Alberto Bertogli

kv对memcachedbBerkeley DBC新浪yes
kv对Kyoto TycoonKyoto CabinetC/C++FAL Labs

结构化kv(redis兼容)ssdbleveddbC/C++个人ideawuyes4k+
结构化kv(redis兼容)ssdb-rocksrocksdbC/C++个人ideawu
92
结构化kv(redis兼容)ardbLevelDB, RocksDB, LMDB, WiredTigerC++个人yinqiwenyes800+
结构化kv(redis兼容)(reborndb)qdbRocksdb and LevelDBGo个人ngaut
200+
结构化kv(redis兼容)PikaRocksdbCQihoo360yes900+
结构化kv(redis兼容)LedisDBLevelDB, goleveldb, LMDB, RocksDB, BoltDB or MemoryGo个人SiddonTang
2K+

单机kvstore的分布式代理

名称语言存储出品应用/githubstar分片弹性备注
ReborndbGoqdb个人ngaut200+yesyes
Netflix DynomiteCredis,memcachedNetflix1.9K+

Dynamo
CodisGocodis-server(定制redis)社区CodisLabs5K+


TwenproxyCredis,memcachedtwitter6K+


分布式KVstore

类型名称语言出品dbengine排名/githubstar存储引擎社区活跃特性备注
kv型riakerlangbashoNo.3/2K+bitcask

Dynamo
kv型beansdbCdouban600+bitcask模型近2年没有更新,没有文档
Dynamo
kv型project VoldmortJavaLinkedInNo.29/1.8K+BDB-JE,MySQL,Read-Only


kv型ScalriserlangZuse Institute BerlinNo.35/88



kv型aeospike
aespikeNo.7



kv型TairC/C++alibaba400+自研的fdb停止更新,没有文档

鸟窝补充

原文中没有提到的,在这里添加上作为补充。

  • tidb: 国产的分布式NewSQL产品,底层采用tikv, 支持MySQL协议, PingCap出品。

  • badger: 性能优异,特别为SSD优化,仅仅key存储在LSM tree中。


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消