MMA概述
MMA(MaxCompute Migration Assist)是一款MaxCompute數(shù)據(jù)遷移工具。本文為您介紹MMA的使用概述,幫助您快速了解并使用MMA。
功能簡(jiǎn)介
Hive數(shù)據(jù)遷移到MaxCompute。
MaxCompute跨項(xiàng)目數(shù)據(jù)遷移。
EMR+DLF+OSS遷移MaxCompute項(xiàng)目。
數(shù)據(jù)遷移原理
Hive數(shù)據(jù)遷移原理
Hive數(shù)據(jù)遷移包含通過Hive UDTF遷移數(shù)據(jù)到MaxCompute、通過OSS遷移Hive數(shù)據(jù)到MaxCompute,本文為您介紹兩種數(shù)據(jù)遷移方式的原理。
通過Hive UDTF遷移數(shù)據(jù)到MaxCompute。
該場(chǎng)景通過Hive的分布式能?,實(shí)現(xiàn)Hive數(shù)據(jù)向MaxCompute的?并發(fā)傳輸。
前提條件。
Hive集群各節(jié)點(diǎn)已能夠訪問MaxCompute。
數(shù)據(jù)遷移過程。
MMA通過Hive MetaStore獲取元數(shù)據(jù),即獲取所有表名、表的Schema和分區(qū)信息。
MMA在MaxCompute端根據(jù)獲取到的Schema建表和分區(qū)。
MMA向Hive提交執(zhí)?UDTF的SQL命令。
UDTF調(diào)?MaxCompute的Tunnel SDK向MaxCompute寫入表數(shù)據(jù)。
數(shù)據(jù)校驗(yàn)。
說明校驗(yàn)?式:在Hive端和MaxCompute端對(duì)同?個(gè)表(或多個(gè)分區(qū))執(zhí)?
SELECT COUNT(*)
命令,通過對(duì)?兩端的?數(shù)驗(yàn)證數(shù)據(jù)是否遷移成功。
通過OSS遷移Hive數(shù)據(jù)到MaxCompute。
該場(chǎng)景會(huì)先將數(shù)據(jù)遷移到OSS, 然后通過MaxCompute讀取OSS數(shù)據(jù)。數(shù)據(jù)遷移過程如下。
通過阿里云“閃電立方”服務(wù)或Jindo DistCp、Juicesync將數(shù)據(jù)從HDFS遷移到OSS。
MMA通過Hive MetaStore獲取元數(shù)據(jù),即獲取所有表、表的Schema、分區(qū)信息等。
MMA在MaxCompute端根據(jù)獲取到的Schema和OSS路徑信息創(chuàng)建MaxCompute OSS外表和外表對(duì)應(yīng)的普通表。
通過執(zhí)行
INSERT 普通表 FROM SELECT OSS外表
命令將數(shù)據(jù)從OSS導(dǎo)?到MaxCompute。
MaxCompute數(shù)據(jù)遷移原理
MaxCompute數(shù)據(jù)遷移包含同Region項(xiàng)目遷移、EMR+DLF+OSS遷移MaxCompute、跨Region項(xiàng)目遷移三種方式,本文為您介紹三種數(shù)據(jù)遷移方式的原理。
同Region項(xiàng)目遷移。
獲取源項(xiàng)目中的所有表、分區(qū),在目的項(xiàng)目中建表、分區(qū)。
執(zhí)行SQL命令
INSERT OVERWRITE ?的表 FROM 源表
遷移數(shù)據(jù)。
EMR+DLF+OSS遷移MaxCompute。
該場(chǎng)景需要通過MaxCompute+DLF建?MaxCompute的外部項(xiàng)目(External Project)。
獲取源項(xiàng)目中的所有表、分區(qū),在?的項(xiàng)目中建表、分區(qū)。
執(zhí)行SQL命令
INSERT OVERWRITE ?的表 FROM 源表
遷移數(shù)據(jù)。
跨Region項(xiàng)目遷移。
該場(chǎng)景使?的是MaxCompute的copytask任務(wù),copytask可以將表數(shù)據(jù)從?個(gè)Region的項(xiàng)目,復(fù)制到另?個(gè)Region的項(xiàng)目。
前提條件:源項(xiàng)目已開啟允許使用copytask的開關(guān)。
MMA任務(wù)與子任務(wù)
MMA可以以單個(gè)數(shù)據(jù)庫(kù)、多個(gè)表、多個(gè)分區(qū)為單位提交遷移任務(wù)。
遷移任務(wù)以“分區(qū)”和“?分區(qū)表”為單位進(jìn)?子任務(wù)分割,子任務(wù)是實(shí)際執(zhí)?遷移操作的單位。?個(gè)子任務(wù)遷移?個(gè)?分區(qū)表或?個(gè)/多個(gè)分區(qū)。
MMA遷移作業(yè)方案
本文為您介紹Hadoop數(shù)據(jù)遷移至MaxCompute的兩種遷移方案,您可以根據(jù)實(shí)際情況選擇。
遷移鏈路一
專線場(chǎng)景下,支持通過MMA遷移Hive數(shù)據(jù)至MaxCompute。遷移方案如下圖所示。
遷移鏈路二
無專線場(chǎng)景下,支持通過閃電立方遷移HDFS數(shù)據(jù)至OSS,再通過MMA將數(shù)據(jù)寫入MaxCompute。遷移方案如下圖所示。
使用向?qū)?/h2>
參考文檔 | 說明 |
介紹配置MMA的準(zhǔn)備工作以及配置流程。幫助您快速搭建MMA環(huán)境。 | |
介紹通過Hive UDTF遷移Hive數(shù)據(jù)的準(zhǔn)備事項(xiàng)及操作步驟。幫助您快速了解Hive數(shù)據(jù)遷移的方式。 | |
介紹數(shù)據(jù)遷移到MaxCompute的準(zhǔn)備事項(xiàng)及操作步驟。幫助您快速了解MaxCompute數(shù)據(jù)遷移的方式。 | |
介紹分區(qū)過濾表達(dá)式的格式。幫助您在創(chuàng)建數(shù)據(jù)遷移任務(wù)時(shí)快速完成分區(qū)過濾的參數(shù)配置。 | |
介紹數(shù)據(jù)遷移任務(wù)的查看與操作,及增量遷移方法。幫助您快速了解遷移任務(wù)的功能。 |