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

ApsaraDB for HBase:MaxCompute への増分データのアーカイブ

最終更新日:Jun 21, 2026

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

重要

Incremental Archive to MaxCompute 機能は 2023 年 6 月 16 日に廃止されました。この日以降に購入した LTS インスタンスでは、この機能を使用できません。2023 年 6 月 16 日より前に LTS インスタンスを購入した場合は、この機能を引き続き使用できます。

前提条件

  • LTS が有効化されていること。

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

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

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

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

  • EMR HBase。

  • ApsaraDB for HBase Standard Edition、 ApsaraDB for HBase Performance-enhanced Edition (クラスターモード)、および Lindorm。

制限事項

  • リアルタイムのデータアーカイブは、HBase の先行書き込みログ (WAL) に基づいています。そのため、バルクローディングによってインポートされたデータはエクスポートできません。

ログのライフサイクル

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

  • 同期タスクを停止せずに LTS インスタンスを解放すると、タスクは一時停止し、データ消費は停止します。

アーカイブジョブの送信

  1. LTS コンソールに移動します。左側のナビゲーションペインで、[Lindorm/HBase Export] > [Incremental Archive to MaxCompute] を選択します。

  2. [Create Job] をクリックします。ジョブ作成ページで、[Task Name] (任意) を指定し、ソースクラスター送信先クラスターを選択して、エクスポートする HBase テーブルを指定します。[Table Mapping] セクションで、列マッピング JSON を設定します。tableMode パラメータを wideTable (ワイドテーブルモード) に設定できます。ジョブを送信する前に、hbase.master.logcleaner.ttl パラメータで定義されているソースクラスターのログ保持期間が、ジョブの失敗を防ぐのに十分な長さであることを確認してください。設定が完了したら、[Create] をクリックします。この設定により、wal-test HBase テーブルのリアルタイムデータが MaxCompute にアーカイブされます。

    • アーカイブされる列は、cf1:acf1:bcf1:c、および cf1:d です。

    • mergeInterval パラメータは、アーカイブ間隔 (ミリ秒) を指定します。デフォルトは 86400000 (1 日) です。

    • mergeStartAt パラメータは、ジョブの開始時刻を yyyyMMddHHmmss 形式で設定します。たとえば 20190930000000 のように過去のタイムスタンプを使用できます。この場合、2019 年 9 月 30 日 00:00:00 からデータのアーカイブが開始されます。

  3. テーブルのアーカイブ進捗を確認します。ジョブを送信した後、ジョブ詳細ページに移動します。[Real-time Synchronization Channel] セクションには、同期レイテンシーとオフセットが表示されます。[Table Merge] セクションには、マージジョブが表示されます。マージが完了したら、MaxCompute でテーブルの最新パーティションをクエリできます。このページには、各コンポーネントのステータスが表示されます。たとえば、[Table Creation Details] のステータスが SUCCEEDED[Real-time Synchronization Channel] が同期レイテンシー 4520 ms で RUNNING[Table Merge] が進捗 47.50% で RUNNING と表示されます。

  4. MaxCompute コンソールにログオンし、テーブルデータをクエリします。SELECT ステートメント (例: SELECT * from hbase2odps.wal_test_xxx WHERE pt = 'xxxxxxxx') を実行して、アーカイブされたデータをクエリします。結果に rowkeycf1_stringcf1_intcf1_longcf1_shortcf1_decimalcf1_doublecf1_floatcf1_booleancf1_hexstring、および 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} // マージ操作は実行されません。

エクスポート設定は、hbaseTableodpsTable、および tbConf の 3 つのパートで構成されます。

  • hbaseTable: ソース HBase テーブルを指定します。

  • odpsTable: 任意。送信先テーブルの名前を指定します。デフォルトでは、この名前は HBase テーブル名と同じです。MaxCompute のテーブル名ではピリオド (.) とハイフン (-) はサポートされません。これらの文字は自動的にアンダースコア (_) に変換されます。

  • tbConf: テーブルのアーカイブ動作を指定します。次の表に、サポートされているパラメータを示します。

パラメータ

説明

cols

エクスポートする列と、そのデータ型を指定します。データ型を省略すると、システムは値を HexString 形式に変換します。

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

mergeEnabled

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

"mergeEnabled": false

mergeStartAt

マージ操作の開始時刻を指定します。過去の時刻を指定できます。値は yyyyMMddHHmmss 形式である必要があります。

"mergeStartAt": "20191008000000"

mergeInterval

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

"mergeInterval": 86400000