DataWorks目前僅支持注冊E-MapReduce(簡稱EMR)的新版集群(即DataLake新版數據湖集群),原有涉及舊版集群的項目需通過遷移方式,移至DataWorks進行數據開發。本文為您介紹,如何通過一鍵遷移方式及文件導入導出方式,將EMR項目遷移至DataWorks工作空間。
前提條件
已開通DataWorks服務并創建DataWorks工作空間。詳情請參見創建并管理工作空間。
如您是RAM用戶,需擁有空間管理員、
AliyunDataWorksFullAccess
和AliyunEMRFullAccess
權限,才可執行遷移操作。授權詳情請參見添加空間成員并管理成員角色權限、為RAM用戶授權。EMR集群已注冊至DataWorks工作空間中,注冊方法請參見注冊EMR集群至DataWorks。
背景信息
DataWorks為您提供了以下兩種方式,將EMR集群下的工作流(節點和調度配置)、手動任務、資源、數據源遷移至DataWorks工作空間中:
遷移后,可通過DataWorks的遷移助手,查看遷移進度、遷移結果及遷移報告,詳情請參見查看遷移報告與結果。
EMR項目原作業類型與遷移至DataWorks后作業類型的映射關系如下。
原作業類型 | 遷移后作業類型 |
SQOOP | DI(離線同步任務) |
SPARK_SQL | EMR_SPARK_SQL |
SPARK | EMR_SPARK |
SHELL | EMR_SHELL |
PRESTO_SQL | EMR_PRESTO |
MR | EMR_MR |
IMPALA_SQL | EMR_IMPALA |
HIVE_SQL | EMR_HIVE |
HIVE | EMR_SHELL |
方式一:通過DataWorks遷移助手導出EMR項目并導入至DataWorks
您可通過DataWorks控制臺,將存儲在EMR集群下的工作流(節點和調度配置)、手動任務、資源、數據源,以文件的形式導出,然后再導入至DataWorks工作空間中。不同版本的DataWorks遷移助手支持的策略不同,不同賬號角色操作權限也存在差異,詳情請參見使用限制。
如您使用RAM賬號進行操作,需擁有AliyunEMRFullAccess
角色權限,否則在選擇項目名稱時將會報錯。授權詳情請參見為RAM用戶授權。
登錄DataWorks遷移助手。
登錄DataWorks控制臺,切換至目標地域后,單擊左側導航欄的 ,在下拉框中選擇對應工作空間后單擊進入數據開發。
單擊左上方的圖標,選擇 。
生成導出文件。
在遷移助手頁面,單擊左側導航欄的 。
在調度引擎導出方案選擇頁面,單擊 。
在新建導出任務對話框,配置導出信息。
導出成功后,可在調度引擎導出方案選擇頁面,查看導出結果。完成后單擊下載導出包,將文件導出至本地。
說明下載鏈接有效期為30天,請及時下載文件至本地。超期后鏈接將失效,您需重新執行導出操作。
導入文件至DataWorks。
新建導入任務。
在遷移助手頁面,單擊左側導航欄的
,單擊新建導入任務。在彈出的新建導入任務對話框,配置導入信息。
參數
描述
導入名稱
自定義的導入任務名稱。
調度引擎
可導入的項目引擎類型,本示例選擇阿里云EMR。
上傳方式
上傳導出包文件到DataWorks工作空間的方式。
本地上傳:導出包文件小于或等于30MB時,可使用本方式。
OSS文件:導出包文件大于30MB時,請使用本方式。在OSS存儲控制臺文件詳情頁,復制URL鏈接,在新建導入任務輸入獲取到的OSS鏈接。
選擇文件
選擇待導入的EMR項目文件,上傳完成后系統將自動進行校驗文件是否符合要求。
說明僅當使用本地上傳時需配置該參數。
OSS鏈接
輸入需導入EMR項目的OSS鏈接。
說明僅當使用OSS文件方式上傳時需配置該參數。
文件名
上傳的文件名稱,由系統根據上傳的文件名稱自動生成。
說明僅當使用本地上傳時需配置該參數。
備注
導入任務的備注描述信息。
進入編輯導入任務頁面后,您可查看即將導入的內容,完成后單擊開始導入。
系統啟動遷移項目。
您可進入導入任務列表查看遷移進度,詳情請參見查看遷移報告與結果。
方式二:通過工具打包EMR項目,再使用DataWorks遷移助手導入至DataWorks
您可通過命令打包EMR項目,再使用DataWorks遷移助手導入該項目至DataWorks,實現項目遷移。
使用該方式前,您本地需安裝Python環境。
打包EMR項目至本地。
下載項目打包工具migrationx-reader至本地,用于打包需要遷移的EMR項目。
使用命令打包待遷移的EMR項目。
解壓上述工具,在本地Python環境執行如下命令。
python ./migrationx-reader/bin/reader.py -a aliyunemr -d . -i $accessId -k $accessKey -p $project -e emr.aliyuncs.com -r $regionId
其中:
$accessId $accessKey:執行打包操作用戶的AccessKey信息。
$project:待打包的EMR項目名稱。
$regionId:EMR項目所在地域。
通過遷移助手導入本地EMR項目包。
新建導入任務。
在遷移助手頁面,單擊左側導航欄的
,單擊新建導入任務。在彈出的新建導入任務對話框,配置導入信息。
參數
描述
導入名稱
自定義的導入任務名稱。
調度引擎
可導入的項目引擎類型,本示例選擇阿里云EMR。
上傳方式
上傳導出包文件到DataWorks工作空間的方式。
本地上傳:導出包文件小于或等于30MB時,可使用本方式。
OSS文件:導出包文件大于30MB時,請使用本方式。在OSS存儲控制臺文件詳情頁,復制URL鏈接,在新建導入任務輸入獲取到的OSS鏈接。
選擇文件
選擇待導入的EMR項目文件,上傳完成后系統將自動進行校驗文件是否符合要求。
說明僅當使用本地上傳時需配置該參數。
OSS鏈接
輸入需導入EMR項目的OSS鏈接。
說明僅當使用OSS文件方式上傳時需配置該參數。
文件名
上傳的文件名稱,由系統根據上傳的文件名稱自動生成。
說明僅當使用本地上傳時需配置該參數。
備注
導入任務的備注描述信息。
進入編輯導入任務頁面后,您可查看即將導入的內容,完成后單擊開始導入。
系統啟動遷移項目。
您可進入導入任務列表查看遷移進度,詳情請參見查看遷移報告與結果。
查看遷移報告與結果
項目遷移完成后,您可在DataWorks遷移助手中查看已執行的遷移任務進度、結果以及相關報告(導入報告、導出報告)。
導入
在調度引擎作業導入頁面,單擊對應任務操作列的查看導入報告。
導出
在調度引擎作業導出頁面,單擊EMR,在該頁簽下單擊對應任務操作列的查看導出報告。