1

HBase では、DeleteColumn() メソッドを呼び出します。つまり、基本的に列ファミリーへのスキーマ変更または列ファミリーの削除により、HBase クラスターのダウンタイムが発生しますか?

4

1 に答える 1

8

HBase のDelete ミューテーションの deleteColumn メソッドは、特定の行から特定の列を削除します。HBase は各行の列のスキーマ レベルの知識を保持しないため、これはスキーマの変更ではありません (また、各行は異なる番号と値を持つことができます)。列のタイプ - 人口の少ない行列と考えてください)。このオブジェクトの deleteFamily についても同様です。

これによりクラスターのダウンタイムは発生しません (また、HBase はリージョンの次の主要な圧縮まで実際にデータを削除しません)。

テーブル全体から列ファミリーを削除したい場合は、HBaseAdmin を介して、あまり適切な名前のないdeleteColumnメソッド (またはシェルのalter 'table_name', {NAME => 'family_name', METHOD => 'delete'}) を使用して削除できます。この場合、最初にテーブルを無効にする必要があるため、HBase が影響を受けることはありません。ダウンタイム、特定のテーブルは

于 2013-09-13T15:15:50.413 に答える