4
當發佈Delete
到hbase時,我意識到它不會立即刪除數據。但是什麼時候刪除數據呢,我的意思是,身體?HBase何時實際刪除一行?
當發佈Delete
到hbase時,我意識到它不會立即刪除數據。但是什麼時候刪除數據呢,我的意思是,身體?HBase何時實際刪除一行?
向HBase寫入內容時,它會存儲在memstore(RAM)中,然後寫入磁盤。這些磁盤寫入通常是不可變的,禁止壓縮。
在hbase的主要壓縮過程中會刪除這些刪除操作 - 這些操作大約每24小時運行一次,可以通過API或外殼程序觸發&。主要壓縮過程刪除標記 - 小壓縮不。
當您發出正常的刪除操作時,會導致刪除(邏輯刪除)標記 - 這些刪除標記&它們表示的數據在壓縮過程中被刪除(不存在於合併後的文件壓縮後)。另外,如果您刪除數據並放入更多數據,但其時間戳比邏輯刪除時間戳(&符合較早刪除條件)的時間戳更早,則可以使用刪除/邏輯刪除標記掩蓋進一步的獲取(僅限於固定在重大壓實後)&因此,在這種情況下,您將不會收到插入值,直到重大壓縮後。
希望它有幫助