在 HBase 中每當有 memstore 數(shù)據(jù) flush 到磁盤之后,就形成一個 StoreFile,當 StoreFile 的數(shù)量達到一定程度后,就需要將 StoreFile 文件來進行 Compact 操作。Compact 的作用如下:
* 清除過期,多余版本的數(shù)據(jù)。 * 合并文件,減少需要檢索的文件數(shù)量,提高讀數(shù)據(jù)的效率。
HBase 中實現(xiàn)了兩種 Compact 的方式:Minor 和 Major. 這兩種 Compact 方式的區(qū)別是:
* Minor 操作會獲取相鄰的部分小StoreFile來執(zhí)行合并操作,不做清理多版本數(shù)據(jù)和刪除數(shù)據(jù)的操作,盡量不影響集群的正常工作。 * Major 操作是對 Region下的Store的所有StoreFile執(zhí)行合并操作,輸出成一個StoreFile,這是一個比較耗費資源的操作,所以不宜頻繁Major Compact。
更多關(guān)于“大數(shù)據(jù)培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業(yè)需求,更科學更嚴謹,每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。