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

Lindorm:MaxCompute への増分アーカイブ

最終更新日:Jun 21, 2026

このトピックでは、HBase から MaxCompute にデータを増分アーカイブする方法について説明します。

注意

MaxCompute 向けの増分アーカイブ機能は、2023 年 6 月 16 日に廃止されました。2023 年 6 月 16 日以降に購入した Lindorm Tunnel Service (LTS) インスタンスでは、この機能を使用できません。この日付より前に購入した LTS インスタンスでは、この機能を引き続き使用できます。

前提条件

  1. Lindorm Tunnel Service (LTS) が有効化されていること。

  2. HBase のデータソースが追加されていること。

  3. MaxCompute のデータソースが追加されていること。

サポートされているバージョン

  • セルフマネージド HBase 1.x および 2.x。

  • E-MapReduce HBase。

  • ApsaraDB for HBase Standard Edition、ApsaraDB for HBase Performance-enhanced Edition、および Lindorm。

制限事項

  • 増分アーカイブ機能は HBase ログに基づいています。そのため、バルクロードを使用してインポートされたデータはエクスポートできません。

ログライフサイクル

  • アーカイブを有効化した後、データが消費されない場合、ログはデフォルトで 48 時間保持されます。この期間を過ぎると、システムはサブスクリプションを自動的にキャンセルし、保持されているデータを削除します。

  • タスクが終了する前に LTS クラスターが解放された場合、または同期タスクが一時停止された場合、データ消費が失敗することがあります。

アーカイブタスクの送信

  1. LTS コンソールで、左側のナビゲーションペインから [Lindorm/HBase Export] > [MaxCompute への増分アーカイブ] に移動します。

  2. [タスクの作成] をクリックします。 [MaxCompute への増分アーカイブ] ページで必要なパラメーターを設定します。 [ソースクラスター] と [宛先クラスター] を選択し、[テーブルマッピング] を指定します。詳細については [Parameter Description] をクリックしてください。たとえば、tableModewideTable に設定します。必要に応じて [Task Name] (任意) を指定し、[Advanced Configurations] を設定することもできます。タスクを送信する前に、ソースクラスターのログ保持期間 (hbase.master.logcleaner.ttl) がタスクの失敗を防ぐのに十分であることを確認してください。設定が完了したら、[Create] をクリックします。この例の設定では、HBase テーブル wal-test から MaxCompute にデータをリアルタイムでアーカイブします。

    • アーカイブされる列は cf1:acf1:bcf1:ccf1:d です。

    • mergeInterval は、アーカイブ間隔をミリ秒単位で指定します。デフォルト値は 86400000 で、1 日です。

    • mergeStartAt は、yyyyMMddHHmmss 形式でマージ操作の開始時刻を指定します。たとえば、値 20190930000000 は、2019 年 9 月 30 日 00:00:00 に操作が開始されることを示します。過去の時刻を指定することもできます。

  3. アーカイブタスクを送信した後、タスク詳細ページでワークフローのステータスを監視できます。このページは 3 つのセクションで構成されます。[Table Creation Details] セクションには、テーブル作成のステータスが表示されます。ステータスが SUCCEEDED の場合、テーブルが作成されています。[Real-time Synchronization Channel] セクションには、チャネルのステータス (例:RUNNING)、同期レイテンシー、およびログ同期のチェックポイント (オフセット) が表示されます。[テーブルマージ] セクションには、マージタスクのステータス (例:RUNNING) と進捗 (例:47.50%) が表示されます。マージが完了したら、MaxCompute で最新のパーティションをクエリできます。

  4. MaxCompute にログインして、アーカイブされたデータをクエリします。マージが完了したら、MaxCompute で SELECT * FROM wal_test WHERE pt = 'xxxxxx' ステートメントを実行し、アーカイブされたデータをクエリします。結果には、ロウキーcf1_stringcf1_intcf1_longcf1_booleancf1_shortcf1_bigdecimalcf1_doublecf1_floatcf1_null、および pt などの列が含まれます。これにより、HBase から MaxCompute へのデータ同期が成功したことを確認できます。

パラメーター

エクスポートされるテーブルは、次の形式で指定します:

hbaseTable/odpsTable {"cols": ["cf1:a|string", "cf1:b|int", "cf1:c|long", "cf1:d|short","cf1:e|decimal", "cf1:f|double","cf1:g|float","cf1:h|boolean","cf1:i"], "mergeInterval": 86400000, "mergeStartAt": "20191008100547"}
hbaseTable/odpsTable {"cols": ["cf1:a", "cf1:b", "cf1:c"],  "mergeStartAt": "20191008000000"}
hbaseTable {"mergeEnabled": false} // マージ操作を無効にします。

テーブルマッピング式は、{{hbaseTable}}{{odpsTable}}、および {{tbConf}} の 3 つの部分で構成されます。{{hbaseTable}} はソース HBase テーブルを指定します。{{odpsTable}} は任意で、宛先テーブル名を指定します。デフォルトの名前は HBase テーブル名と同じです。なお、MaxCompute は、テーブル名に含まれる . や - などのサポートされていない文字を _ に変換します。{{tbConf}} は、テーブルのアーカイブ動作を指定します。次の表に、{{tbConf}} でサポートされるパラメーターを示します。

パラメーター

説明

cols

エクスポートする列とそのデータ型を指定します。デフォルトでは、データは HexString 形式に変換されます。

"cols": ["cf1:a", "cf1:b", "cf1:c"]

mergeEnabled

キー・バリュー (KV) テーブルをワイドテーブルに変換するかどうかを指定します。デフォルト値は true です。

"mergeEnabled": false

mergeStartAt

マージ操作の開始時刻です。形式は yyyyMMddHHmmss です。過去の時刻を指定することもできます。

"mergeStartAt": "20191008000000"

mergeInterval

ミリ秒単位でマージ操作の間隔を指定します。デフォルト値は 86400000 (1 日) で、データが日次でアーカイブされることを意味します。

"mergeInterval": 86400000