640.gif

作者:阿里云数据库产品事业部 高级技术专家 傅忱


LSMs(Log Structured Merge Trees)结构在现今数据存储系统中非常流行,很多著名系统,包括 Google BigTable,H ,RocksDB,Apache Cassandra 等等都采用了这一结构。Log Structured 是指,对于所有数据插入和更新,在关键路径上都是被添加到一个数据流末尾,形成一个新的版本。

这一结构与传统的 B+ 树相比,大大提高了写性能,同时在一定程度上降低了磁盘的写放大。但是另外一方面,LSMs 后台用于清理过期版本的 compaction 过程还是会引起相当大的写放大,在著名的 RocksDB 中,数据量水位高的时候,写放大最坏可达 40倍(https://www.slideshare.net/HiveData/siy

收藏 打印