如果您想要將源HBase集群或源Lindorm實例中某個時間段的歷史數據遷移至新的Lindorm實例,或想要同步實時數據到新Lindorm實例,可以在創建任務時添加相關時間參數,修改任務配置。本文介紹通過LTS控制臺創建任務時配置遷移或同步時間范圍的方法。
前提條件
已檢查源集群、目標集群、LTS的網絡連通性。
已添加Lindorm數據源。如何添加,請參見添加Lindorm寬表數據源。
注意事項
遷移前請確認目標實例的HDFS容量,確保可用容量足以支撐數據遷移,避免遷移過程中出現容量已滿導致任務失敗的情況。
根據時間范圍篩選遷移數據的過程會對數據讀取進行解析,因此會占用一定的CPU資源,可能會增加數據遷移的時間。
在創建實時同步任務前,請先檢查源集群的日志保留時間(hbase.master.logcleaner.ttl),防止日志保留時間過短導致任務失敗。檢查及修改方式,請參見修改日志保留時間。
說明創建實時同步任務是指創建實時數據復制任務,或創建一鍵遷移任務時勾選了實時數據復制。
歷史數據遷移
在左側導航欄,選擇
。單擊創建任務。
填寫并勾選相關參數:源集群、目標集群、表結構遷移。
在同步/遷移的表中,添加時間參數,格式為
<表名>{"startTs": "<起始時間點>", "endTs": "<終止時間點>"}
。例如tableA {"startTs": "20200101000000", "endTs": "20200102000000"}
表示遷移tableA
中2020年1月1號零點整到2020年1月2日零點整的數據。參數
說明
startTs
起始時間,表示遷移該時間點之后(包含該時間點)的數據。格式為
YYYYMMDDHHMMSS
,表示年月日時分秒
。endTs
終止時間,表示遷移該時間點之前(包含該時間點)的數據。格式為
YYYYMMDDHHMMSS
,表示年月日時分秒
。重要startTs和endTs表示某個具體時間點,格式不是時間戳。例如
20200101132250
表示2020年01月01日13點22分50秒。startTs和endTs可以根據需求填寫:
只指定起始時間點:僅填寫startTs即可,格式為
<表名>{"startTs": "<起始時間點>"}
。表示遷移該時間點之后的所有歷史數據。只指定終止時間點:僅填寫endTs即可,格式為
<表名>{"endTs": "<終止時間點>"}
。表示遷移該時間點之前的所有歷史數據。
(可選)如果源集群是自建HBase集群,在高級配置中填寫
{"exporterEnable":false}
。如果源集群非自建集群,可跳過此步驟。單擊創建,創建遷移任務并保存配置。
實時數據復制
實時數據復制是通過WAL日志(Write-Ahead Log)進行同步的,因此只能同步系統當前日志中的數據,例如設置同步的開始時間為3天前,而WAL日志只涵蓋了1天前的數據,那么實時數據復制只能同步1天前的數據。
歷史數據的同步必須使用歷史數據遷移任務來完成。
在LTS控制臺的左側導航欄,選擇
。單擊創建任務。
填寫并勾選相關參數:源集群、目標集群、表結構遷移、同步/遷移的表。
在高級配置中填寫時間參數,格式為
{"startTS": <起始時間戳>,"endTS":<終止時間戳>}
,表示同步一個時間范圍內的實時數據。參數
說明
startTS
起始時間,表示同步該時間點之后(包含該時間點)的數據。startTS為13位時間戳,單位為毫秒(ms)。
endTS
終止時間,表示同步該時間點之前(包含該時間點)的數據。endTS為13位時間戳,單位為毫秒(ms)。
startTS和endTS可以根據需求填寫:
只指定同步開始時間:僅填寫startTS即可,格式為
{"startTS": "<起始時間戳>"}
。表示同步該時間點之后的所有實時數據。只指定同步結束時間:僅填寫endTS即可,格式為
{"endTS": "<終止時間戳>"}
。表示從當前時間開始數據同步,到該時間戳對應的時間點結束同步。
重要如果源集群是自建HBase集群,還需在高級配置中添加
"exporterEnable":false
。單擊創建,創建同步任務并保存配置。
一鍵遷移
您可以在一鍵遷移中同時配置歷史遷移任務和實時數據同步任務。