TcaplusDB引擎参数调整
Tcaplus的引擎参数调整多用于性能调优和数据重整搬迁, 本小节主要让读者了解引擎参数各自的作用,引擎参数调整实质上属于一种数据搬迁,关于搬迁提单的操作就不再赘述。
"调整引擎参数”也可以不动,保持原值,然后“修改Shard分布”选择“手动”,这样是不变更引擎参数的Shard数据重新搬迁(Shard总数不变,但可调整Shard在Svr上的分布)
引擎参数解析:bnum=7500000#xmsiz=1000000000#lnum=7300000#xikmsiz=475000000#kfapow=6#kmapow=6#vfapow=6#vmapow=6
bnum,hash桶大小,Tcaplus依靠hash桶来达到O(1)的访问效率,这里hash桶的长度即bnum,长度过大会浪费,过小则hash冲突比较多导致二叉树高度比较高,建议采用默认配置
xmsiz,前多少GB的文件映射在内存里,建议采用默认的1GB,如果需要更多的数据放在内存,则建议横向扩容,即多分几个shard出来
lnum,LRU节点个数,这个是LRU交换冷热数据需要使用的第三方节点,建议采用默认值
xikmsiz,内存里key占用的大小,为了最大努力的把key放在内存里,这里在内存里设置了部分区域只是存放key,不能存放value,这里xmsiz就是这个参数,过大会浪费,过小会导致key放在SSD盘上,一般采用默认值
kfapow,key在SSD盘上切割的豆腐块大小,比如2^6 = 64B
kmapow, key在内存里切割的豆腐块大小,比如2^6 = 64B
vfapow,value在SSD盘上切割的豆腐块大小,比如2^6 = 64B
vmapow, value在内存里切割的豆腐块大小,比如2^6 = 64B
这里的kmapow、vmapow一定要设计合理,才不会导致内存里的数据浪费,cache命中率高,kfapow、vfapow 这需要合理,才导致浪费或者多次磁盘IO影响性能