5.1.2 Flush vs. Compaction 区别 在 LSM-Tree(Log-Structured Merge-Tree)架构的存储系统中,Flush 与 Compaction 并非一对可互换的同义词,也不是简单的时间先后关系——它们是同一数据生命周期中截然不同、职责分明、触发机制迥异、资源消耗模式相斥的两个核心操作。若将 LSM-Tree 比作一座精密运转的现代化工厂,那么 MemTable 就是高速流水线上的装配台,WAL 是永不丢失的电子工单日志,而 SSTable 则是封装完毕、等待质检入库的标准化成品箱。Flush,是把装配台上尚未封箱的半成品(即内存中已提交但未持久化的键值对)一次性打包落盘为只读 SSTable 文件;