すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for HBase:機能の概要

最終更新日:Mar 29, 2026

ApsaraDB for Lindorm が提供する Lindorm Streams は、ApsaraDB for HBase Performance-enhanced の増分データを Message Queue for Apache Kafka のトピックに公開します。これらのトピックをサブスクライブすることで、ダウンストリームシステムが行単位の変更をリアルタイムで消費できます。

Lindorm Streams では、以下の機能がサポートされています:

仕組み

Lindorm Streams は、各行に対する操作を 1 つのメッセージとして Kafka トピックに公開します。各メッセージには、対象行の 2 つのバージョン(操作前の状態と操作後の状態)を含めることができます。

配信セマンティクス

注文保証

同一行に対する操作は、発生した順序で公開されるため、コンシューマーは同一のシーケンスでそれらを再生できます。

最低 1 回の配信(at-least-once)

Lindorm Streams は最低 1 回の配信を保証します。ただし、設定されたリトライポリシーにより、同一メッセージが複数回配信される場合があります。そのため、コンシューマー側では重複メッセージを適切に処理できるように設計してください。

1 回限りのセマンティクス(exactly-once)を利用する場合は、「チケットを送信」してください。

メッセージフォーマット

各メッセージは、以下の構造を持つ JSON オブジェクトです:

{
  "op": "<opType>",
  "table": "<tableName>",
  "ts": "<defaultVersion>",
  "keyOnly": "<keyOnly>",
  "data": [
    {
      "type": "<type>",
      "name": "<name>",
      "ts": "<version>",
      "value": "<value>"
    }
  ]
}

以下の表では、最上位レベルのフィールドについて説明します。

フィールド説明
op操作の種類です。有効な値: Put および DeleteFamily
tableテーブル名です。
tsデフォルトバージョンです。行に ts キーが含まれていない場合に使用されます。
keyOnlyメッセージにプライマリキーのみを含めるかどうかを示します。
dataカラムエントリの配列です。各エントリには、以下に記載するフィールドが含まれます。

以下の表では、各 data エントリ内のフィールドについて説明します。

フィールド説明
typeカラムのデータの型です。
nameカラム名です。
tsデータのバージョンです。空欄の場合、dts の値がバージョンとして使用されます。
valueカラムの値です。空欄の場合、テーブル内の実際の値は null です。

メッセージパラメーター

以下のパラメーターを使用して、各メッセージに含めるデータを制御できます。

パラメーター必須デフォルト説明
key_onlybooleanいいえfalseプライマリキーのみを同期するかどうかを指定します。
unique_keybooleanいいえfalseバッチごとにプライマリキーを 1 度だけ送信するかどうかを指定します。