OBCP V4.0每日一题 5555

OBCP V4.0每日一题

问题
OceanBase 采用哪种存储引擎架构来实现写入高性能?
A. B-Tree
B. LSM-Tree
C. COLA
D. Hash Index

答案
B. LSM-Tree

Tips

  • LSM-Tree(日志结构合并树)是 OceanBase 存储引擎的核心架构。数据写入时先写入内存中的 MemTable,达到阈值后再转储为 SSTable,避免频繁的随机磁盘写入,从而大幅提升写入性能。
  • 选项 A 的 B-Tree 是传统关系型数据库(如 MySQL InnoDB)采用的存储结构,写入时可能涉及随机 I/O,不适合高并发写入场景。
  • OceanBase 针对 LSM-Tree 进行了多项优化,包括布隆过滤器缓解读放大、多版本并发控制(MVCC)实现快照读、分层 Compaction 策略平衡读写性能等。

延伸思考
LSM-Tree 通过“先写内存、再批量落盘”的设计,将随机写转化为顺序写,这是 OceanBase 能够支撑金融级高并发写入场景的关键技术基础。但同时它也带来了读放大和空间放大问题,理解 OceanBase 如何通过布隆过滤器、缓存、Compaction 机制来平衡这些 trade-off,是深入掌握其存储引擎原理的核心。

3 个赞

:grinning: :grinning:

关于OceanBase的讨论很有价值,特别是在问题场景下,合理使用Tree是关键。

这题选B,LSM

B. LSM-Tree