Lindorm Table は、リアルタイムの変更追跡機能をサポートしています。この機能は、Lindorm からリアルタイムの増分データを取得するのに役立ちます。増分データを消費して、さまざまなビジネスシナリオを実装できます。
背景情報
Lindorm の変更追跡機能は、テーブル内のすべてのデータ変更を記録します。これらの変更レコードはクライアントで表示できます。テーブルの変更追跡機能を有効にすると、データを挿入、更新、または削除するたびに、ストリームレコードが生成されます。このレコードはキーと値のペアです。キーは行のプライマリキーです。値には、操作前後の値、タイムスタンプ、操作タイプなどの操作の詳細が含まれます。
有効化モード
Lindorm の変更追跡機能は、プルモデルとプッシュモデルの 2 つのモードで有効にできます。
プルモデル: オープンソースの Kafka クライアントを使用して、データに直接サブスクライブできます。サービスはデータを一時的に保存します。保存されたデータには有効期限を設定する必要があり、有効期限が切れるとデータは削除されます。詳細については、「プルモデルでデータサブスクリプションチャンネルを作成する」をご参照ください。
プッシュモデル: Lindorm の変更追跡機能は、データを Kafka クライアントに直接プッシュします。サービスはデータを保存しません。詳細については、「プッシュモデルでデータサブスクリプションを作成する」をご参照ください。
データサブスクリプションのライフサイクル
タスクを停止せずに Lindorm Tunnel Service (LTS) クラスターをリリースすると、同期タスクは一時停止します。これにより、データが消費されなくなります。
変更追跡を有効にしてもデータを消費しない場合、サブスクリプション関係はデフォルトで 48 時間後に自動的にキャンセルされ、データも削除されます。
制限
Lindorm の変更追跡機能は、at-least-once 処理セマンティクスのみをサポートします。これは、内部リトライにより、同じデータレコードが複数回消費される可能性があることを意味します。
Lindorm の変更追跡機能からの増分メッセージは順不同です。メッセージを消費する順序は、Lindorm ワイドテーブルに書き込まれる順序と同じではありません。
HBase テーブルの変更追跡機能には、Lindorm Tunnel Service (LTS) バージョン 3.7.0 以降が必要です。
説明LTS を有効にしている場合は、変更追跡機能を有効にする前に最新バージョンにスペックアップしてください。詳細については、「マイナーバージョンアップデート」をご参照ください。
LTS を有効にしていない場合は、変更追跡機能を有効にするときに購入できます。デフォルトでは最新バージョンの LTS が購入されます。詳細については、「変更追跡を有効にする」をご参照ください。
非 SSD インスタンスでは変更追跡機能を有効にしないことをお勧めします。これは、この機能を使用して行の最新値または更新前の値をエクスポートすると、更新前の値を取得するために追加の読み取り操作が実行されるためです。その結果、各書き込み操作で追加の読み取り操作が発生します。OldImage または NewImage 機能が不要で、差分データのみが必要な場合は、チケットを送信してください。
プルモデルでデータサブスクリプションチャンネルを作成すると、サブスクライブされたデータはデフォルトで 7 日間保存されます。このデータは、基盤となる Lindorm Distributed File System (LDFS) ストレージ領域を Lindorm と共有します。変更追跡機能を有効にする前に、十分なストレージ領域があることを確認してください。