Leveldb是一个google实现的非常高效的kv数据库,版本1.2能够支持billion级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。特别是LSM算法。
leveldb中有一系列参数会与读写的效率有关,将相关的配置以及编译常量统一修改成可运行时配置参数,测试选取最佳配置值。
首先确定在一个tair server上要启几个leveldb实例?
Tair中以桶来组织数据,如果按照一个桶一个leveldb实例,在做迁移复制的时候会很方便,但考虑如果在一块磁盘上起多个实例,那么整体看来,多个顺序写变成了随机写,每个实例的compact进程会加剧整个磁盘的随机IO,所以并不采用每个桶一个实例,而是针对磁盘的数量由相关配置控制实例的个数。