A-A+

阿里LSMTree存储引擎X-Engine

2022年02月02日 数据库 暂无评论 阅读 65 次

 

X-Engine是阿里云研发的LSM-Tree结构的存储引擎,主打低存储成本带来的性价比。

 

问题

  • the tsunami problem 海啸问题:122倍突发流量
  • the flood discharge problem 泄洪问题:将内存数据快速转到持久化存储组件
  • the fast-moving current problem 快变洋流问题:热点行变化快

架构

优化总结

读路径优化

Extent

Cache

多版本SuperVersion

增量cache替换

写路径优化

memtable热点行优化

减少skiplist node

执行和提交解耦

执行期间完全不写log

提交流水线

Flush & Compaction

快刷L0

只将L0刷下去,不做merge。另引入intra-L0 merge做多个L0 layer的合并。

加速Compaction

Extent复用

FPGA加速

Compaction调度

rule-based scheduler:

  1. Compaction for deletion:为了消除deletion
  2. Intra-L0 compaction:L0内部的多个layer
  3. Minor Compaction:除最底层之外的其他层之间的merge
  4. Major Compation:合并到最底层
  5. Self-major compaction:最底层内部合并以减少碎片

给我留言