LSM-Tree的Compaction为何让数据库工程师又爱又恨:从写放大到读放大的三十年权衡

2018年,某互联网公司的一条生产事故报告引发了广泛关注:他们的RocksDB实例在写入量激增时突然"卡死",应用层请求超时雪崩。排查日志后发现,罪魁祸首是Write Stall——RocksDB的内部保护机制在L0层文件过多时主动暂停写入。这不是孤例。在LSM-Tree架构的数据库中,Compaction(合并压缩)机制既是性能的守护者,也可能成为故障的导火索。 ...

12 min · 5976 words

没有完美的数据结构:从时空权衡到缓存友好的选择之道

1953年,IBM工程师Hans Peter Luhn在一份内部备忘录中提出了一个改变计算机科学进程的想法:用哈希函数将数据映射到固定位置,实现快速查找。这个被称为"哈希表"的数据结构,至今仍是计算机领域应用最广泛的发明之一。 ...

11 min · 5015 words