HBase使用WAL的目的

2018-05-25 11:45 更新

Write Ahead Log

Write Ahead Log(WAL)將HBase中數(shù)據(jù)的所有更改記錄到基于文件的存儲(chǔ)中。在正常操作下,不需要WAL,因?yàn)閿?shù)據(jù)更改從MemStore移動(dòng)到StoreFiles。但是,如果在刷新MemStore之前RegionServer崩潰或變得不可用,則WAL確保可以重播對(duì)數(shù)據(jù)所做的更改。如果寫入WAL失敗,則修改數(shù)據(jù)的整個(gè)操作將失敗。

HBase使用WAL接口的實(shí)現(xiàn)。通常,每個(gè)RegionServer只有一個(gè)WAL實(shí)例。一個(gè)例外是攜帶hbase:Meta的RegionServer;meta表有自己的專用WAL。在將它們的Mutations MemStore記錄到受影響的Store之前,RegionServer將Puts和Deletes記錄到它的WAL中。

HLog:在2.0之前,HBase中的WAL接口被命名HLog。在0.94中,HLog是WAL實(shí)施的名稱。您可能會(huì)在為這些舊版本定制的文檔中找到對(duì)HLog的引用。

WAL位于HDFS中的/hbase/WALs/目錄下,每個(gè)區(qū)域有子目錄。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)