1. 程式人生 > >Hbase儲存資料結構

Hbase儲存資料結構

比如現在該rs下有4個檔案,儲存的是4個region的資訊:

file1: RegionA,4表示的是檔名是file1,其中儲存了一個entry其regionname是reginA,其seqNum是4,seqnum是遞增的且新建的檔案的seq比原先的大

file1:  RegionA,4    RegionB,5     RegionC,6  RegionD,7

file2:  RegionA,8    RegionB,9     RegionC,10

file3:  RegionA,11    RegionB,12     RegionD,13

file4:  RegionB,14      

如上面所示,假設上面4個檔案都存在,且假設此時lastSeqWritten 中儲存的是RegionB,14

因為lastSeqWritten儲存的是最新加入的entries且並沒有被flush,這說明Region A,C,D都已經flush結束的,而file1,2,3,由於其seqnum都小於14,認為這些file都已經flush成功了,可以移除了,因為A,C,D都已經flush成功,而如果1,2,3中的Region B未flush那麼此時lastSeqWritten儲存的肯定不是14了而是小於十四的未flush的seq