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