本文為您介紹如何使用資料轉送遷移ApsaraDB for HBase 增強版的資料至 OBKV。
如果資料移轉任務長期處於非活躍狀態(任務狀態為 失敗、已暫停 或 已完成),受增量日誌保留時間長度等影響,任務可能無法恢複。資料轉送將主動釋放處於非活躍狀態超過 3 天的資料移轉任務,以回收相關資源,建議您為任務配置警示並及時處理任務相關異常。
背景資訊
在OceanBase控制台建立從ApsaraDB for HBase 增強版遷移資料至 OBKV 的資料移轉任務,您可以通過結構遷移、全量遷移和增量同步處理,無縫遷移源端資料庫中的存量業務資料和增量資料至 OBKV。
ApsaraDB for HBase 增強版是由雲原生多模資料庫 Lindorm 寬表引擎提供的、完全相容 HBase 資料庫的雲上管理的資料庫,詳情請參見 HBase 增強版產品簡介。
OBKV 是OceanBase 標準版支援的標準版(Key-Value)系列,是在 OceanBase 關係型資料庫(關係型+ SQL)的基礎上發展而來,完全複用 OceanBase 資料庫的 Shared-Nothing 架構。詳情請參見 產品系列。
前提條件
資料轉送已具備雲資源存取權限。詳情請參見 資料轉送遷移角色授權。
已為源端 HBase 資料庫建立專用於資料移轉的資料庫使用者,並賦予其相關許可權。詳情請參見 HBase 資料來源。
已為目標端 OBKV 建立專用於資料移轉的資料庫使用者,並賦予其相關許可權。詳情請參見 建立 OBKV 執行個體使用者及授權。
使用限制
目前資料轉送支援 HBase 資料庫 V2.x,OBKV V4.2.1 和 V4.2.4。
資料轉送僅支援遷移 HBase 增強版中
tablename和columnfamily由 0-9、a-z、A-Z 和底線(_)組成的資料至 OBKV。遷移 HBase 增強版的資料至 OBKV 時,僅支援 HBase 模型的表對象,選擇其他類型表對象可能導致資料品質問題。
增量同步處理配置中的 Kafka 分區數建議設定為 1。
注意事項
不建議將 HBase 增強版至 OBKV 的資料移轉任務作為長期同步的方式,僅作為資料移轉使用。如果存在下述兩種情況,增量同步處理階段可能導致資料品質問題,並在全量校正階段被檢測到。
如果使用指定版本(時間戳記)的方式更新值,資料轉送將無法識別。
如果存在 put 某個行鍵(rowkey)的欄位資料為空白字串('')的操作,增量同步處理階段可能判斷為將該值刪除。
遷移 HBase 增強版的資料至 OBKV 時,全量校正僅支援使用 IN 模式拉取資料,無法校正目標端存在源端沒有的資料的情境,並且校正效能會有一定程度降級。
如果源端或目標端存在僅大小寫不同的表對象,可能會因為源端或目標端大小寫不敏感導致資料移轉的結果不符合預期。
節點之間的時鐘不同步,或者電腦終端和伺服器之間的時鐘不同步,均可能導致延遲時間(增量同步處理/反向增量)不準確。
例如,如果時鐘早於標準時間,可能導致延遲時間為負數。如果時鐘晚於標準時間,可能導致延遲。
如果 HBase 增強版和 OBKV 的 TTL(Time to Live) 配置不一致,可能導致源端和目標端的資料不一致。
如果在建立資料移轉任務時,您僅配置了 增量同步處理,資料轉送要求源端資料庫的 Kafka 保留資料儲存 48 小時以上。
如果在建立資料移轉任務時,您配置了 全量遷移+增量同步處理,資料轉送要求源端資料庫的 Kafka 保留資料至少保留 7 天以上。否則資料轉送可能因無法擷取 Kafka 保留資料而導致資料移轉任務失敗,甚至導致源端和目標端資料不一致。
操作步驟
登入 OceanBase 管理主控台,購買資料移轉任務。
詳情請參見 購買資料移轉任務。
在 資料轉送 > 資料移轉 頁面,單擊新購買的資料移轉任務後的 配置。

如果您需要引用已有的任務配置資訊,可以單擊 引用配置。詳情請參見 引用資料移轉任務配置。
在 選擇源和目標 頁面,配置各項參數。
參數
描述
遷移任務名稱
建議使用中文、數字和字母的組合。名稱中不能包含空格,長度不能超過 64 個字元。
源端
如果您已建立 HBase 資料來源,請從下拉式清單中進行選擇。如果未建立,請單擊下拉式清單中的 建立資料來源,在右側對話方塊進行建立。參數詳情請參見 建立 HBase 資料來源。
目標端
如果您已建立 OBKV 資料來源,請從下拉式清單中進行選擇。如果未建立,請單擊下拉式清單中的 建立資料來源,在右側對話方塊進行建立。參數詳情請參見 建立 OceanBase 資料來源。
標籤
單擊文字框,在下拉式清單中選擇目標標籤。您也可以單擊 管理標籤,進行建立、修改和刪除。詳情請參見 通過標籤管理資料移轉任務。
單擊 下一步,在 選擇遷移類型 頁面,選擇當前資料移轉任務的遷移類型。
遷移類型 包括 結構遷移、全量遷移、增量同步處理、全量校正 和 反向增量。

遷移類型
描述
結構遷移
結構遷移任務開始後,資料轉送會源庫中的資料對象定義(表、列族等)遷移到目標端資料庫中,並自動過濾暫存資料表。
全量遷移
全量遷移任務開始後,資料轉送會將源端庫表的存量資料移轉至目標端資料庫對應的表中。
增量同步處理
增量同步處理任務開始後,資料轉送會同步源端資料庫發生變化的資料(新增、修改或刪除)至目標端資料庫對應的表中。
增量同步處理 支援 DML 同步,您可以根據需求進行自訂配置。詳情請參見 自訂配置 DDL/DML。
說明如果您在建立 HBase 資料來源時,未綁定 Kafka 資料來源,則無法選擇 增量同步處理。
當您選擇 增量同步處理 > DML 同步 時,請聯絡阿里雲支援人員,確認投遞到 Kafka 的資料具備有序性,否則可能出現資料不一致的風險。HBase 投遞到 Kafka 的配置詳情請參見 Streams(即時資料訂閱)功能介紹。
全量校正
在全量遷移完成、增量資料同步至目標端並與源端基本追平後,資料轉送會自動發起一輪針對源端資料庫配置的資料表和目標表的全量資料校正任務。
反向增量
反向增量任務開始後,可以即時將業務切換後在目標端資料庫產生的變更資料迴流至源端資料庫。
通常反向增量會複用增量同步處理的配置,您也可以根據實際需求進行自訂配置。
(可選)單擊 下一步。在 資料來源補充資訊 對話方塊,選擇 Kafka 資料來源及對應的 Topic,單擊 測試連通性。測試成功後,單擊 儲存。
說明您在建立 HBase 資料來源時,未勾選 增量同步處理選項設定,而在 選擇遷移類型 步驟,選擇了 增量同步處理,才會在建立任務時彈出 資料來源補充資訊 對話方塊,提醒您補充對應的增量同步處理選項設定。參數詳情請參見 建立 HBase 資料來源。

單擊 下一步。在 選擇遷移對象 頁面,選擇當前資料移轉任務的遷移對象。
在左側選中需要遷移的對象,單擊 >,將其添加至右側列表中。OBKV 僅支援單列族表,因此 HBase 資料庫的多列族情境對應 OBKV 多張表。
資料轉送支援通過文本匯入對象,並支援對目標端對象進行重新命名、設定分區,以及移除單個或全部遷移對象等操作。

操作
步驟
匯入對象
在選擇地區的右側列表中,單擊右上方的 匯入對象。
在對話方塊中,單擊 確定。
重要匯入會覆蓋之前的操作選擇,請謹慎操作。
在 匯入遷移對象 對話方塊中,匯入需要遷移的對象。
您可以通過匯入 CSV 檔案進行庫表重新命名、設定行過濾條件等操作。詳情請參見 下載和匯入遷移對象配置。
單擊 檢驗合法性。
完成遷移對象匯入後,請先檢驗合法性。
通過檢驗後,單擊 確定。
重新命名
資料轉送支援重新命名遷移對象的名稱,對象名稱的格式為
tablename$columnfamily。詳情請參見 資料庫的庫表重新命名。重要遷移 HBase 增強版的資料至 OBKV 時,僅支援遷移 default namespace 中的對象至 OBKV default 資料庫,且不支援對庫名 default 進行重新命名。
設定
僅選擇 結構遷移 時,資料轉送才支援分區設定。
在 分區設定 對話方塊中,分區方式 目前僅支援 key 分區,您可以進行以下設定。
分區鍵
預設為 K,且不支援修改。
分區數
支援您自行輸入,最小值為 1,最大值為 1024。
使用結合虛擬列分區
預設不勾選,表示使用 K 分區,不添加虛擬列。
勾選該項後,您需要輸入 虛擬列定義,僅支援 substring 文法虛擬列。例如,
substring(K,1,4)。
移除/全部移除
資料轉送支援在資料對應時,對暫時選中到目標端的單個或多個對象進行移除操作。
移除單個遷移對象
在選擇地區的右側列表中,滑鼠移至上方至目標對象,單擊顯示的 移除,即可移除該遷移對象。
移除全部遷移對象
在選擇地區的右側列表中,單擊右上方的 全部移除。在對話方塊中,單擊 確定,即可移除全部遷移對象。
單擊 下一步。在 遷移選項 頁面,配置各項參數。
全量遷移
在 選擇遷移類型 頁面,選中 全量遷移,才會顯示下述參數。

參數
描述
讀取並發配置
該參數用於配置全量遷移階段從源端讀取資料的並發數,最大限制為 512.並發數過高可能會造成源端壓力過大,影響業務。
寫入並發配置
該參數用於配置全量遷移階段往目標端寫入資料的並發數,最大限制為 512。並發數過高可能會造成目標端壓力過大,影響業務。
全量遷移速率限制
您可以根據實際需求決定是否開啟全量遷移速率限制。如果開啟,請設定 RPS(全量遷移階段每秒最多可以遷移至目標端的資料行數的最大值限制)和 BPS(全量遷移階段每秒最多可以遷移至目標端的資料量的最大值限制)。
說明此處設定的 RPS 和 BPS 僅作為限速限流能力,全量遷移實際可以達到的效能受限於源端、目標端、執行個體規格配置等因素的影響。
目標端表對象存在記錄時處理策略
在 選擇遷移類型 頁面,選中 全量遷移,才會顯示該參數。處理策略包括 覆蓋 和 停止遷移:
選擇 覆蓋:可能導致目標端已存在資料被源端資料覆蓋。例如,目標端存在與源端 key、timestamp 相同的資料,目標端的值將被更新為源端的值。
選擇預設值 停止遷移:當目標端表對象存在資料時,全量遷移會報錯不允許遷移,請處理好目標端資料後再繼續遷移。
重要如果出錯後單擊恢複,資料轉送將忽略該配置選項,繼續遷移表資料,請謹慎操作。
遷移資料版本
HBase 支援多版本儲存,通過 timestamp 標記資料行版本。如果選擇 遷移資料版本 為 全部版本,全量遷移將遷移資料行的所有版本。如果選擇 遷移資料版本 為 最新版本,全量遷移僅遷移最新 timestamp 資料行的版本。
增量同步處理
在 選擇遷移類型 頁面,選中 增量同步處理,才會顯示下述參數。

參數
描述
寫入並發配置
該參數用於配置增量同步處理階段往目標端寫入資料的並發數,最大限制為 512。並發數過高可能會造成目標端壓力過大,影響業務。
增量同步處理速率限制
您可以根據實際需求決定是否開啟增量同步處理速率限制。如果開啟,請設定 RPS(增量同步處理階段每秒最多可以同步至目標端的資料行數的最大值限制)和 BPS(增量同步處理階段每秒最多可以同步至目標端的資料量的最大值限制)。
說明此處設定的 RPS 和 BPS 僅作為限速限流能力,增量同步處理實際可以達到的效能受限於源端、目標端、執行個體規格配置等因素的影響。
增量同步處理起始位點
如果選擇遷移類型時已選擇 全量遷移,則不顯示該參數。
如果選擇遷移類型時未選擇 全量遷移,但選擇了 增量同步處理,請在此處指定遷移某個時間節點之後的資料,預設為當前系統時間。詳情請參見 設定增量同步處理位點。
反向增量
在 選擇遷移類型 頁面,選中 反向增量,才會顯示該地區的參數。反向增量的配置參數預設 複用增量同步處理配置。

您也可以取消複用增量同步處理配置,根據實際需求進行配置。
參數
描述
寫入並發配置
該參數用於配置反向增量階段往源端寫入資料的並發數,最大限制為 512。並發數過高可能會造成源端壓力過大,影響業務。
反向增量速率限制
您可以根據實際需求決定是否開啟反向增量速率限制。如果開啟,請設定 RPS(反向增量同步處理階段每秒最多可以同步至源端的資料行數的最大值限制)和 BPS(反向增量同步處理階段每秒最多可以同步至源端的資料量的最大值限制)。
說明此處設定的 RPS 和 BPS 僅作為限速限流能力,反向增量同步處理實際可以達到的效能受限於源端、目標端、執行個體規格配置等因素的影響。
增量同步處理起始位點
如果選擇遷移類型時已選擇 全量遷移,則不顯示該參數。
如果選擇遷移類型時未選擇 全量遷移,但選擇了 增量同步處理,則預設以正向切換(如有)為準,不支援修改。
全量校正
在 選擇遷移類型 頁面,選中 全量校正,才會顯示該地區的參數。

HBase 支援多版本儲存,通過 timestamp 標記資料行版本。如果選擇 校正資料版本 為 全部版本,全量校正將校正資料行的所有版本。如果選擇 校正資料版本 為 最新版本,全量校正僅校正最新 timestamp 資料行的版本。
單擊 預檢查,系統對資料移轉任務進行預檢查。
在 預檢查 環節,資料轉送會檢查資料庫使用者的讀寫權限、資料庫的網路連接等是否符合要求。全部檢查任務均通過後才能啟動資料移轉任務。如果預檢查報錯:
您可以在排查並處理問題後,重新執行預檢查,直至預檢查成功。
您也可以單擊錯誤預檢查項操作列中的 跳過,會彈出對話方塊提示您跳過本操作的具體影響,確認可以跳過後,請單擊對話方塊中的 確定。
預檢查成功後,單擊 啟動任務。
如果您暫時無需啟動任務,請單擊 儲存。後續您只能在 遷移工作清單 頁面手動啟動任務或通過大量操作啟動任務。大量操作的詳情請參見 大量操作資料移轉任務。資料移轉任務啟動後,會根據選擇的遷移類型依次執行,詳情請參見 查看遷移詳情。
資料轉送支援在資料移轉任務運行過程中減少遷移對象,詳情請參見 減少遷移對象。
重要HBase 增強版至 OBKV 的資料移轉任務運行過程中不支援增加遷移對象。