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

ApsaraDB for HBase:増分データをMaxComputeにアーカイブする

最終更新日:Jan 16, 2025

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

使用上の注意

この機能は、2023年6月16日以降に購入されたLindorm Tunnel Service(LTS)インスタンスでは使用できなくなりました。 LTSインスタンスが2023年6月16日より前に購入された場合は、引き続きこの機能を使用できます。

前提条件

  • LTSがアクティブ化されている。

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

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

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

  • セルフマネージド HBase V1.x および HBase V2.x

  • Elastic MapReduce(EMR) HBase

  • ApsaraDB for HBase Standard Edition、クラスターモードで実行されるApsaraDB for HBase Performance-enhanced Edition、およびLindorm

制限事項

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

ログデータのライフサイクル

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

  • LTSインスタンスで作成された同期タスクを停止せずにLTSインスタンスを解放すると、同期タスクは一時停止され、データは消費されません。

アーカイブタスクを送信する

  1. LTS Web UI にログオンします。左側のナビゲーションペインで、[データエクスポート] > [MaxCompute への増分アーカイブ] を選択します。1

  2. [新しいジョブの作成] をクリックします。表示されるページで、ソース HBase クラスターと宛先 MaxCompute クラスターを選択し、エクスポートする HBase テーブルを指定します。Great Job上の図は、HBase テーブル wal-test から MaxCompute にリアルタイムデータをアーカイブする方法の例を示しています。

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

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

    • mergeStartAt パラメーターを yyyyMMddHHmmss の形式で指定します。この例の値は、2019年9月30日 00:00 を開始時刻として指定しています。過去の時間を指定できます。

  3. テーブルのアーカイブの進行状況を表示します。[リアルタイム同期チャネル] セクションには、ログ同期タスクのレイテンシと開始オフセットが表示されます。[テーブルマージ] セクションには、テーブルマージタスクが表示されます。テーブルがマージされた後、MaxComputeで新しいパーティションテーブルをクエリできます。

  4. MaxComputeコンソールにログインして、データをクエリします。View Table data

パラメーター

次のコードは、エクスポートされたテーブルの形式の例を示しています。

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:宛先 MaxCompute テーブルの名前。このパラメーターはオプションです。デフォルトでは、MaxComputeテーブルの名前はソース 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