内存KV缓存/数据库,可以选择它?
啥是LevelDB? LevelDB是Google开发的,一个速度非常块的KV存储库(storage library),它支持字符串的key与字符串的value,并且这种映射关系按key排序(ordered mapping)。 LevelDB有什么特点? (1)key和value可以是字符串或者字节流; (2)数据默认按key排列,有序存储; 画外音:调用方可以重载排序方法,以实现自定义排序。 (3)简单易用,基本操作只有3种:
(4)提供原子批量修改接口; (5)支持数据快照; (6)支持数据自动压缩;画外音:使用的是snappy压缩算法。 (7)开源,文档很详尽,Google出品很可靠; LevelDB有什么局限?
LevelDB的性能如何? 内存缓存的特点就是快。 Google也进行了一系列测试:测试库共100w行记录,每条记录16字节的key,100字节的value,压缩后的value大概50字节。 写性能
读性能
上述性能都是在没有打开“压缩”功能下的结果,如果打开“压缩”选项,性能会有所提升。
画外音:Google非常诚实的提到,由于100w行的数据量很小,这些数据是能够完全放入内存。 (编辑:我爱故事小小网_铜陵站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |