HBase Bookで、テーブルから行を削除できるようになったことを読みました。
それはどのように正確に機能しますか?このデータは後で削除するためにどこかに移動されますか?
HBaseは、一度書き込まれたファイルの編集におけるHDFSの制限によって制限されているため、どのように機能するのか興味があります。誰かがそれについてもっと知っているなら、あなたに知識を共有してください。
ありがとう。
HBase Bookで、テーブルから行を削除できるようになったことを読みました。
それはどのように正確に機能しますか?このデータは後で削除するためにどこかに移動されますか?
HBaseは、一度書き込まれたファイルの編集におけるHDFSの制限によって制限されているため、どのように機能するのか興味があります。誰かがそれについてもっと知っているなら、あなたに知識を共有してください。
ありがとう。
http://hbase.apache.org/book.html#d705e2948でいくつかの有用な情報を見つけました
そのセクションからの抜粋
トゥームストーンマーカーを作成して作業を削除します。たとえば、行を削除したいとします。このためにバージョンを指定できます。そうでない場合は、デフォルトでcurrentTimeMillisが使用されます。これが意味するのは、「バージョンがこのバージョン以下であるすべてのセルを削除する」ということです。HBaseはその場でデータを変更することはないため、たとえば、削除によって、削除条件に対応するストレージファイル内のエントリがすぐに削除(または削除済みとしてマーク)されることはありません。むしろ、削除された値をマスクする、いわゆるトゥームストーンが書き込まれます。行を削除するときに指定したバージョンが、行内のどの値のバージョンよりも大きい場合は、行全体が削除されたと見なすことができます。
行には削除済みのフラグが付けられ、取得されたデータには含まれていませんが、データはまだ存在しています。圧縮が発生すると、削除されたデータが削除されます。