11
  1. 私は HBase を初めて使用します。HBase クライアント API で見つけたのですが、更新操作はサポートされていませんか? あれは正しいですか?
  2. その場合、特定の行キーの値を更新するための推奨されるベスト プラクティスは何ですか?
4

2 に答える 2

13

任意のセルの値を作成または更新するPUTを使用できます。新しいバージョンに古いセルの一部を含めないようにする場合を除いて、deleteを使用する必要はありません。

私たちが持っていると言う

r1:f1:c1:value1
r1:f1:c2:value2 

r1:f1:c1の新しい値を入力すると、次のようになります。

r1:f1:c1:new value 
r1:f1:c2:value2 

実際には、各セルは行キー、列ファミリー、セル、タイムスタンプ、バージョン、および値として格納されていることに注意してください。したがって、バージョン管理の設定方法(列ファミリーごと)によっては、ポイントインタイムクエリを実行して削除された値を確認するなど、古い値にアクセスすることもできます。

于 2012-12-03T14:54:03.640 に答える
4

あなたがやりたいのはPut操作を実行することだと思います。HBaseのPutAPIクライアントのドキュメントと、「 HBaseデータモデル操作を使用したJavaサンプルコード」というタイトルのブログ投稿、および操作の説明を参照できます。

行を更新するには、単一のミューテーションで「削除」と「配置」のシーケンスを発行する必要があるため、外部からの更新と見なされます。

このような呼び出しを作成する方法については、 ClassRowMutationsのドキュメントを参照してください。

于 2012-12-02T09:32:06.890 に答える