《HBase權威指南》讀書筆記 第八章:架構,LSM樹

LSM樹

LSM的英文名是 log-structured merge-tree。它適合寫入量很大的數據庫。執行寫入操作時,先把數據寫在C0層級,通常C0放在內存中。當C0層級的數據達到設定的閾值時,將數據合併到C1層級。當C1層級達到閾值時,合併到C2層級。這樣層層合併,文件數量越來越少,文件變得越來越大。每個層級的數據都是排序的,合併的時候通過類似歸併排序的算法實現快速排序。對於刪除操作,僅僅將數據標記爲已刪除,合併的時候跳過已標記爲刪除的數據,達到物理刪除的效果。

下圖展示了這種合併原理:

這裏寫圖片描述

LSM樹的工作機制能夠讓機械硬盤發揮最大的效果,因爲寫入的過程中所有的操作都是順序讀寫。

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