本文介紹通過遷移服務MMS(MaxCompute Migration Service)將資料來源遷移至MaxCompute。
遷移作業類型
MMS支援單庫整庫遷移、部分遷移(多表)、部分遷移(多分區)三種遷移作業類型。
單庫整庫遷移,遷移單個Database。
部分遷移(多表),遷移一個或多個Table。
部分遷移(多分區), 遷移一個或多個Partition。
操作步驟
在建立遷移作業前,需確保已配置資料來源。
登入MaxCompute控制台,在左上方選擇目標地區。
在左側導覽列,選擇。
在資料來源頁簽,單擊目標資料來源左側的
,展開資料庫列表。單擊目標資料庫操作列中的整庫遷移或部分遷移,配置相關參數。
若單擊部分遷移,將進入目標資料庫頁面,在表列表和分區列表頁簽,勾選待遷移的表或分區,然後單擊建立遷移作業。
參數名
是否必填
說明
庫名
是
預設為待遷移的資料庫名稱。
作業名稱
是
作業名稱。
資料來源
是
預設為當前資料來源名稱。
源庫
是
預設為當前待遷移的資料庫名稱。
目標MaxCompute專案
是
選擇目標Maxompute專案名稱。
說明當資料來源為BigQuery時,目標MaxCompute專案必須支援Schema。
目標Schema
是
選擇目標MaxCompute專案下的Schema。Schema詳情請參見Schema操作。
說明該參數僅適用於已開啟Schema的專案。
table黑白名單
否
你可以選擇白名單或黑名單,介紹如下:
白名單:即為需要遷移的Table名稱,多個Table名稱之間以半形逗號(,)分隔。
說明當遷移類型選擇部分遷移(多表),白名單為已勾選的表。
整庫遷移進入時,白名單預設為空白。
黑名單:為不需要遷移的Table名稱,多個Table名稱之間以半形逗號(,)分隔。
當遷移類型選擇部分遷移(多分區),無需進行此配置。
ETA
否
選擇期望作業執行完成時間,MMS服務將根據該時間進行優先順序排序。
開啟校正
否
如果開啟,MMS將在源、目標端分區分別執行
SELECT COUNT(*),擷取遷移對象的行數,根據行數驗證資料是否遷移成功。增量遷移
否
如果開啟,則建立任務將忽略已經遷移成功的分區。
只遷移表結構
否
只在MaxCompute端建立相應表和分區的結構,不遷移資料。
分區過濾
否
分區過濾運算式。例如:
p1 >= '2022-03-04' and (p2 = 10 or p3 > 20) and p4 in ('abc', 'cde'),介紹如下:p1、p2和p3均為分區名。
分區值僅包含字串和數字,字串被雙引號或單引號包裹。
除INT和BIGINT類型的分區列值外,其他類型的分區值都只能取字串值。
比較操作符包括:
>、>=、= 、<、<=、<>。分區過濾運算式支援
IN操作符。邏輯操作符包括:
AND和OR。支援使用括弧。
表名映射
否
表遷移到目標MaxCompute後的名稱。
欄位名映射
否
列名中遷移到MaxCompute後的名稱。
其他配置
否
針對TableType類型的映射, 配置項為JSON格式,如:
{ "mc.table.type": { "dataset1.table1":{"table.type":"delta","pk":["id1"]}, "dataset2.table2":{"table.type":"delta","pk":["id1","id2"]}, "dataset2.table2":{"table.type":"transactional"} } }。單擊提交,完成遷移作業的建立。
建立完成後,您可在遷移作業頁簽,查看遷移作業狀態,若遷移作業運行失敗後:
您可以單擊目標遷移作業操作列中的詳情,進入遷移任務列表頁面,單擊目標任務操作列中日誌,查看失敗原因。
您可以單擊目標遷移作業操作列中的重試,重跑遷移作業。
說明資料移轉會涉及遷移Schema、遷移資料、資料校正三個階段,如果遷移作業的某個任務遷移任務失敗,執行重試操作後,遷移任務會重新從遷移資料階段開始重新運行。