全部產品
Search
文件中心

Lindorm:增量歸檔MaxCompute

更新時間:May 26, 2026

本文主要介紹如何在Hbase中進行增量歸檔MaxCompute。

注意事項

增量歸檔MaxCompute功能於2023年6月16日下線。2023年6月16日後購買的LTS將無法使用增量歸檔MaxCompute功能,2023年6月16日前購買的LTS仍可正常使用此功能。

前提條件

  1. 已開通LTS。

  2. 已添加HBase資料來源。

  3. 已添加MaxCompute資料來源。

支援版本

  • 自建HBase1.x、2.x。

  • EMR HBase。

  • 標準版雲HBase、增強版雲HBase(叢集版本)、Lindorm。

限制

  • 即時資料歸檔基於HBase的日誌,因此不能匯出bulkload的資料。

日誌生命週期

  • 開啟歸檔後,如果不消費資料,預設日誌會保留48小時,逾時後訂閱關係自動取消,保留的資料自動刪除

  • 什麼情境會導致“不消費資料”:沒有終止任務的前提下直接釋放LTS叢集;同步任務暫停;

提交歸檔任務

  1. 進入LTS操作頁面,在左側導覽列選擇Lindorm/HBase匯出 > 增量資料匯出MaxCompute

  2. 單擊建立任務, 進入建立頁面,選擇對應的HBase源叢集和MaxCompute目的地組群, 指定需要匯出的HBase表。在 Lindorm/HBase增量歸檔MaxCompute 頁面,填寫以下配置項:任務名(可不填)、源叢集目的地組群表映射(可單擊參數說明查看詳情,其中 tableMode 可設定為 wideTable)及進階配置。請注意源叢集下方的紅色提示:即時同步任務提交前請確認源叢集日誌保留時間(hbase.master.logcleaner.ttl),防止日誌保留時間過短導致任務失敗。配置完成後單擊建立。以上配置樣本對HBase表wal-test進行即時資料歸檔到MaxCompute

    • 歸檔的列包括cf1:a、cf1:b、cf1:c、cf1:d四列。

    • mergeInterval 表示的是歸檔的間隔(單位毫秒), 預設指定 86400000 (一天)。

    • mergeStartAt(格式為yyyyMMddHHmmss)表示從2019年9月30號0點整作為起始時間(可以指定一個過去的值) 。

  3. 查看錶歸檔進度。即時同步通道展示的是日誌同步的延遲、點位,Table Merge展現的是表Merge的任務,Merge完成即可在MaxCompute上查詢最新分區的表。提交歸檔任務後,可在歸檔任務詳情頁查看工作流程執行狀態,頁麵包含三部分資訊:建表詳情顯示建表任務狀態為 SUCCEEDED,表示建表已完成;即時同步通道顯示通道狀態為 RUNNING,同步時延為 4520 ms;Table Merge顯示合并任務運行狀態為 RUNNING,任務進度為 47.50%。

  4. 登入MaxCompute查詢表資料。Merge 完成後,在 MaxCompute 中執行 SELECT * FROM wal_test WHERE pt = 'xxxxxx' 查詢歸檔資料,返回結果包含 rowkeycf1_stringcf1_longcf1_booleancf1_shortcf1_bigdecimalcf1_doublecf1_floatcf1_nullpt 等列,確認 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} // 不進行merge操作

匯出的表包含三部分:{{hbaseTable}},{{odpsTable}} ,{{tbConf}}。 {{hbaseTable}}:指定HBase表。 {{odpsTable}}:可選,指定目標表名。預設情況和HBase相同 (ODPS表名不支援包含”.-“等字元,統一轉化成”_”)。 {{tbConf}}:指定表的歸檔行為。 {{tbConf}}支援的參數如下表:

參數

說明

例子

cols

指定需要匯出的列及列類型。預設轉化格式為HexString。

“cols”: [“cf1:a”, “cf1:b”, “cf1:c”]

mergeEnabled

是否需要進行KV錶轉化成寬表, 預設為true。

“mergeEnabled”: false

mergeStartAt

merge的起始時間,可以指定一個過去的時間,格式是yyyyMMddHHmmss。

“mergeStartAt”: “20191008000000”

mergeInterval

merge的時間間隔,單位毫秒,預設是一天,即按天歸檔。

“mergeInterval”: 86400000