淺析Cassandra LeveledCompactionStrategy

前言

Cassandra是基於LSM架構的分佈式數據庫。LSM中有一個很重要的過程,就是壓縮(Compaction)。默認的壓縮策略是SizeTieredCompactionStrategy,今天主要說一下另一種壓縮策略LeveledCompactionStrategy。

LeveledCompactionStrategy

LeveledCompactionStrategy被用在讀密集的場景,讀操作的延遲相對容易估算(最壞情況讀的文件數量可以確定),舊數據可以更快被淘汰。缺點是會有更多的磁盤IO消耗,可能會影響到讀寫操作延遲。

這個壓縮算法主要是將數據分級(L0,L1,L2……)。最開始數據在內存(memtable)裏,然後被flush到磁盤上,也就是到了L0這級。L0的sstable會和L1的合併成更大的sstable。

增加SSTabl

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章