天天看點

基于更新熱點感覺的LSM-Tree查詢優化

摘要

基于LSM-Tree的鍵值存儲已經得到廣泛使用。LSM-Tree通過将更新的資料緩存在記憶體中、随後批量寫入磁盤的優化措施取得極高的寫性能。然而,在基于LSM-Tree的鍵值存儲中,被更新鍵值對的舊資料不會立即從存儲系統中清除,導緻整個存儲系統中積累大量的無效資料,最終會顯著降低鍵值存儲的讀性能。針對以上問題,提出一種更積極的壓縮(compaction)方法,通過記錄鍵值對更新的曆史資訊,識别出更新熱點,在整個LSM-Tree存儲系統中尋找無效資料大量聚集的SSTable,盡早實施壓縮,清除無效資料,緩解寫放大效應,進而提升讀性能。實驗表明,該方法能夠降低LevelDB 65.2%的平均讀時延、69.4%的99%讀尾時延以及71.4%的寫放大。

關鍵詞: 鍵值存儲 ; 日志結構合并樹 ; 讀性能優化 ; 寫放大

0 引言

随着網際網路的發展,資料規模與日俱增,大資料時代已經來臨。在大資料時代背景下,有海量資料需要存儲,如在電子商務、社交網絡、網頁搜尋等場景,每天都需要存儲和讀取大量的資料。這就要求用一種高性能的數