OceanBase 的数据存储引擎基于以下哪种架构实现?
A. B + 树
B. LSM-Tree
C. Hash 索引
D. 倒排索引
选择哪一个
3 个赞
B. LSM-Tree
B选项
1 个赞
学习了 谢谢大佬
2 个赞
B LSM-TREE
学习了
存储引擎LSM-Tree
OceanBase 的数据存储引擎是基于 B. LSM-Tree 架构实现的-1-2-7。
架构解析与特点
LSM-Tree 全称是 Log-Structured Merge Tree(日志结构合并树),相比传统的 B+ 树,它是一种对写入操作更友好的存储结构。OceanBase 选择这种架构来实现其高性能和高并发的写入能力-6-9。
它的工作方式可以概括为“读写分离”和“延迟写磁盘”:
- 高效写入 :数据先写入内存 中的 MemTable,积累到一定阈值后,再批量顺序写入 磁盘。这个过程避免了传统数据库随机写入磁盘的性能瓶颈,极大提升了写入速度-4-7-9。
- 数据组织 :磁盘上的数据分为两部分:
- 查询与后台合并 :读取时需要合并内存和磁盘中的多个版本数据,可能会带来一定的读放大问题-2-3。为此,OceanBase 后台会通过“合并”操作,定期清理过期数据(如墓碑记录)并整理文件结构,以维持查询性能-2。
值得一提的是,在 LSM-Tree 架构基础上,OceanBase 也在其较新版本中扩展了对列存的支持,以更好地兼顾分析型查询,从而打造一套引擎同时支持事务(TP)和分析(AP)的 HTAP 能力-1-9。
选B. LSM-Tree
6666