首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于大量记录的高性能持久密钥值存储

用于大量记录的高性能持久密钥值存储
EN

Stack Overflow用户
提问于 2014-09-13 08:35:31
回答 4查看 5.6K关注 0票数 11

大概有10亿条记录。每个记录有1kb的数据大小,并存储在SSD中。哪一个kv存储可以提供最佳的随机读取性能?它需要将每次查询的磁盘访问次数减少到1次,并且所有的数据索引都将存储在内存中。

Redis是快速的,但是在内存中存储1TB数据太昂贵了。LevelDB每次查询读取磁盘几次。我发现的最接近的是脂肪缓存,但它不是持久的。是SSD支持的memcached。

有什么建议吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-09-15 22:36:30

RocksDB可能是您的选择,它是为内存和闪存盘等快速存储而优化的,并且具有高度可定制性。如果您的应用程序在初始大容量加载后是只读的,那么您可以将RocksDB配置为将所有内容压缩到一个大文件中。这样,读取最多只能有一个I/O。但是,如果应用程序同时处理读和写,那么为了每次读取最多有一个I/O,您将需要牺牲写性能,因为您需要经常配置rocksdb,这会损害写入性能。

RocksDB的调优指南也可以找到这里

票数 10
EN

Stack Overflow用户

发布于 2014-09-14 03:09:52

您可能想试试RocksDB,它是一个为SSD存储优化的facebook库。您也可以尝试阿德贝,它是一个基于RockDB/LevelDB/LMDB的与redis协议兼容的NoSQL DB构建。

票数 2
EN

Stack Overflow用户

发布于 2014-09-13 08:45:32

你看过飞机吗?我没有使用它,但是他们声称在SSD上有很好的表现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25821380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档