假設我只是向表中添加了一行,並且該行仍在memstore中。此時,我刪除了它。刪除發生了什麼?我不知道我的理解是否正確:在memstore中爲該行添加標記。當memstore被刷新時,行和標記被寫入HFile。但是,如果是這樣的話,爲什麼不從memstore中刪除該行?當HBase仍在memstore中時,它如何刪除一行?
0
A
回答
0
在磁盤上的Store文件中可能存在具有相同rowkey的行,在這種情況下,具有相同rowkey的另一個add將會是對現有行的更新,從而導致該行的新版本。 使用刪除標記從memstore保存新添加的行將允許主要壓縮刪除該行的所有舊版本直到刪除標記的版本。
1
HBase的工作方式是每一個變化都是一個新的「插入」。這讓我們高效地工作。你還應該記住,在很多情況下,HBase被設置爲保存每個值的x版本。所以,一行只在memstore中,它應該只保留行的一個版本是一個非常具體的邊緣情況。系統以單一的,預測和測試的方式工作比處理這種邊緣情況更好。
相關問題
- 1. HBase中的Memstore如何更新記錄?
- 2. 當Memstore在Hbase中崩潰時會發生什麼?
- 3. 如何刪除hbase表中的一行
- 4. HBase何時實際刪除一行?
- 5. Hbase memstore手動刷新
- 6. HBase MemStore和垃圾回收
- 7. Hbase memstore和內存是否一樣?
- 8. 爲什麼當我在tableview中刪除一行時,它會刪除多行?
- 9. HBase-刪除多行
- 10. HBase:如何使用Map-Reduce刪除行
- 11. HBase:如何刪除區域
- 12. 如何刪除hbase表中同一列的行?
- 13. 當我刪除控件時,它仍然繪製爲形式
- 14. 但它仍然刪除如何使用PHP刪除目錄
- 15. 如何在HBASE中處理行級刪除?
- 16. 如何刪除一個對象,當有東西碰到它時?
- 17. 防止在AdminCP中刪除帳戶時它仍然登錄
- 18. 當它到達過期日期時刪除一行PHP Mysql
- 19. 當我按下刪除按鈕時如何刪除UITableView行?
- 20. 當我刪除SQL Server中的父行時,如何刪除子行?
- 21. 如何刪除Hbase表中所有行的列
- 22. 即刪除HBase的
- 23. 從hbase刪除列
- 24. 當點擊一行中的元素時刪除一行
- 25. 如何在程序窗口中刪除它的一部分而不刪除它?
- 26. 如何刪除Emacs中的當前行?
- 27. 當在moc B中刪除一個託管對象時,它是否仍然存在?
- 28. 在actionscript 3.0中,當刪除一個孩子,爲什麼代碼仍然運行?
- 29. 當讀取HDFS和存儲HBase時,「java.io.IOException:傳遞一個刪除或一個Put」
- 30. 當刪除最後一個引用時SQLite刪除共享行