5

hbaseに発行Deleteするとき、データがすぐに削除されないことを認識しています。しかし、データの削除はいつ発生しますか?つまり、物理的にはどうなりますか?

4

1 に答える 1

17

HBaseに何かを書き込むと、それはmemstore(RAM)に格納され、その後ディスクに書き込まれます。これらのディスク書き込みは、通常、圧縮を除いて不変です。

削除は、hbaseでの主要な圧縮中に処理されます。これらは、約24時間ごとに実行され、APIまたはシェルを介してトリガーできます。メジャーコンパクションはマーカ​​ーを削除します-マイナーコンパクションは削除しません。

通常の削除を発行すると、削除(トゥームストーン)マーカーが生成されます。これらの削除マーカーとそれらが表すデータは、圧縮中に削除されます(圧縮後にマージされたファイルには存在しません)。

また、データを削除してより多くのデータを配置したが、トゥームストーンのタイムスタンプよりも早いタイムスタンプ(&は以前の削除の基準を満たす)の場合、削除/トゥームストーンマーカーによってさらに取得がマスクされる可能性があります(メジャー圧縮後にのみ修正されます)。が実行されました)&したがって、この場合、主要な圧縮が完了するまで、挿入された値を受け取りません。

それが役に立てば幸い

于 2012-07-25T20:47:52.513 に答える