日志结构合并树(Log-Structured Merge-Tree)
缩写:LSM
简述
先顺序写内存表与日志,再分层合并到磁盘的存储结构。优化写吞吐,读可能多路查找并依赖压缩与布隆过滤。
为何出现
随机写 B+ 树在纯写负载下成本高。
使用场景
宽表/时序/高写入 KV 与部分 NewSQL;理解写放大与读放大。
实践与应用
• 监控压缩(compaction)积压。
• 读多负载评估是否合适。
• 调 memtable/层策略需有基准。
注意事项
• 写放大、空间放大、读放大三角。
• 压缩抢 IO 影响尾延迟。
对比与易混
| LSM | B+树 | |
|---|---|---|
| 写 | 顺序写友好 | 页更新 |
信号与度量
压缩队列、写放大、读延迟分位。
关联术语
• B+树:读路径对照
• 压缩合并:后台代价
• 写放大:关注点