全部產品
Search
文件中心

MaxCompute:準備工作

更新時間:Mar 04, 2026

本文介紹在使用資料移轉服務MMS(MaxCompute Migration Service)前的準備工作。

適用範圍

華東1(杭州)、華東2(上海)、華北2(北京)、華北3(張家口)、華北6(烏蘭察布)、華南1(深圳)、西南1(成都)、中國香港、印尼(雅加達)、新加坡、日本(東京)、美國(維吉尼亞)、德國(法蘭克福)地區支援MMS遷移服務。

重要

在資料移轉前需停止資料來源端表和分區的寫入操作,避免遷移後資料校正失敗。

操作步驟

步驟一:建立MaxCompute目標專案

專案(Project)是MaxCompute的基主要組織單元。

  • 執行資料移轉前,需要選擇資料來源將要映射到的目標MaxCompute專案。

  • 遷移過程中,需要MaxCompute專案執行各類遷移作業。

因此,執行資料移轉需要先建立MaxCompute專案(若已有可用專案,該步驟可省略)。通過MaxCompute控制台建立專案的步驟如下:

  1. 登入MaxCompute控制台,在左上方選擇地區。

  2. 在左側導覽列,選擇管理配置 > 项目管理

  3. 内部项目頁簽,單擊新建项目

  4. 在彈出的新增项目對話方塊,根據介面提示文案設定項目資訊,單擊確認

    詳細配置參數參考建立MaxCompute專案

步驟二:開通VPC網路連接

若當前地區已有可用的VPC網路連接,該步驟可省略。

  1. 登入MaxCompute控制台,在左上方選擇地區。

  2. 在左側導覽列,選擇管理配置 > 网络连接 。

  3. 网络连接頁面,單擊新增网络连接

  4. 在彈出的新增网络连接對話方塊,根據介面提示文案設定項目資訊,單擊確定。首次新增需先前往授權,允許MaxCompute平台代理申請網卡,否則串連將建立失敗。

    配置參數如下:

    參數

    是否必填

    描述

    连接名称:

    必填

    自訂串連名稱。格式如下:

    • 字母開頭。

    • 只能包含字母、底線(_)和數字。

    • 長度在1-63個字元。

    类型:

    必填

    預設為直通连接(passthrough)

    直通连接(passthrough)對應的即是專用網路串連方案。

    区域:

    必填

    系統根據左上方選擇的地區自動產生。詳情請參見開通地區

    已选择VPC:

    必填

    Virtual Private Cloud是雲上安全隔離的虛擬網路環境,提供了類似於傳統資料中心的安全和可配置的私人網路空間。
    • VPC執行個體ID。如需建立新的專用網路,請參考建立/刪除專用網路

    • 擷取方式:

      1. 登入專用網路管理主控台

      2. 在左側導覽列選擇專用網路,在左上方選擇地區。

      3. 專用網路頁面,擷取專用網路執行個體ID/名稱

      若串連HBase、Hadoop叢集,可以在對應控制台的網路連接資訊處擷取該資訊。

    交换机:

    必填

    交換器用來劃分子網,同一VPC內的不同交換器之間內網互連。通過在多個不同可用性區域的交換器中同時部署雲產品資源,可以避免應用受到單一可用性區域故障的影響。
    • VPC網路綁定的交換器ID。如果沒有可選交換器,請參考建立/刪除交換器

    • 擷取方式:

      1. 登入專用網路管理主控台

      2. 在左側導覽列選擇交換器,在左上方選擇地區。

      3. 交換器頁面,擷取交換器執行個體ID/名稱

      若串連HBase、Hadoop叢集,可以在對應控制台的網路連接資訊處擷取該資訊。

    安全组:

    必填

    安全性群組扮演雲上虛擬防火牆的角色,通過管理安全性群組和規則,可提供精細化的網路安全隔離與存取控制。

    安全性群組ID,如需建立安全性群組,請參考建立安全性群組

  5. 在後續的資料移轉作業中涉及對資料來源的訪問,因此要保證使用的VPC能訪問互連網或者來源資料端專線。

步驟三:建立服務關聯角色

在首次使用遷移服務(MMS)前,需建立服務關聯角色AliyunServiceRolePolicyForMaxComputeMMS,MMS使用此角色來訪問在MaxCompute和其他雲產品中的資源。

  1. 若目前使用者使用帳號為阿里雲主帳號,可以直接操作建立服務關聯角色;

    若目前使用者為RAM使用者,則需要先授予RAM使用者操作許可權AliyunRAMFullAccess,操作詳情參考管理RAM角色的許可權

  2. 建立服務關聯角色有兩種方式:通過MaxCompute控制台和通過RAM控制台,操作步驟如下:

    通過MaxCompute控制台

    1. 登入MaxCompute控制台,在左上方選擇地區。

    2. 在左側導覽列,選擇数据传输 > 迁移服务

    3. 数据源頁簽,單擊新增数据源

    4. 在彈出的MaxCompute服务关联角色對話方塊中,單擊确认,即可建立成功。若未自動彈出該對話方塊,則表明該角色已建立。

    通過RAM控制台

    1. 登入RAM控制台

    2. 在左側導覽列選擇身份管理 > 角色

    3. 角色頁面,單擊建立角色

    4. 建立角色頁面的右上方,單擊建立服務關聯角色

    5. 建立服務關聯角色頁面,選擇信任的雲端服務AliyunServiceRoleForMaxComputeMMS,單擊建立服務關聯角色

步驟四:許可權配置

  1. 配置使用者MaxCompute資料操作許可權

    通過SQL配置

    1. 使用本地用戶端(odpscmd)串連MaxCompute,添加已建立的服務關聯角色。

      USE <target_projectname>;
      
      -- 為使用者添加服務關聯角色。
      Add USER  `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
    2. 給使用者授予許可權

      MaxCompute支援不同粒度許可權控制,在專案實際運行過程中,可根據人員操作範疇授權

      • 粗粒度授權,直接授權admin角色給user,不用逐張表給同一使用者重複授予許可權。

        GRANT admin TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
      • 細粒度授權:逐個專案、表或執行個體層級授權。

        授予專案級資料操作許可權

        -- 授予專案級資料操作許可權。
        GRANT <actions> 
          ON project <project_name> TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        -- 支援的actions
        Read,Write,List,CreateTable,CreateInstance,CreateFunction,CreateResource,All
        -- 樣本1
        GRANT Read,Write,List,CreateTable,CreateInstance,CreateFunction,CreateResource
          ON project <project_name> TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        -- 樣本2
        GRANT ALL 
          ON project <project_name> TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;

        授予表級資料操作許可權

        -- 授予表級資料操作許可權。
        GRANT <actions> 
          ON table <table_name> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        -- 支援的actions
        Describe,Select,Alter,Update,Drop,ShowHistory,All
        -- 樣本1
        GRANT Describe,Select,Alter,Update,Drop,ShowHistory
          ON table <table_name> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        -- 樣本2
        GRANT All
          ON table <table_name> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;

        授予執行個體級資料操作許可權

        -- 授予執行個體級資料操作許可權。 
        GRANT <actions> 
          ON instance <instance_id> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        -- 支援的actions
        Read,Write,All 
        
        -- 樣本1
        GRANT Read,Write 
          ON instance <instance_id> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        
        -- 樣本2
        GRANT All 
          ON instance <instance_id> [(<column_list>)] TO USER `RAM$<account_id>:role/AliyunServiceRoleForMaxComputeMMS`;
        

    參數說明

    • target_projectname:必填,目標專案空間的名稱。

    • account_id:必填,預設UID

    • privileges:必填,被授予的操作許可權名稱。單次授權可以指定多個操作,多個操作名稱之間使用半形逗號(,)分隔。

    通過MaxCompute控制台配置

    1. 登入MaxCompute控制台,在左上方選擇地區。

    2. 在左側導覽列,選擇管理配置 > 项目管理

    3. 项目管理頁面,單擊目標專案操作列的管理

    4. 项目配置頁面,選擇角色权限頁簽。

    5. 在彈出的新建角色對話方塊,根據介面提示文案設定項目資訊,單擊確定

      該步驟的目的是在MaxCompute中單獨建立一個專案角色,並為該角色單獨授予專用於MMS的資料操作許可權。

      也可選擇使用專案內建的admin角色,無需通過該步驟新增角色,直接執行下一步驟。

      配置參數如下:

      參數

      是否必填

      描述

      角色名称

      必填

      字母开头,可包含字母和数字,长度不超过64个字符

      角色类型

      必填

      • Admin:管理類型角色。

        • 支援通過Policy授予管理類型許可權,不支援授予資源許可權

        • 不支援通過ACL方式授予管理類許可權。

      • Resource:資源類型角色。

        • 支援通過Policy或ACL方式授予資源類型許可權,不支援授予管理類型許可權

      授权方式

      必填

      • ACL(Access Control Lists):白名單授權機制,允許使用者或角色對指定對象執行指定操作。

      • Policy:支援白名單和黑名單授權機制,適合需要細粒度控制的大型企業和複雜情境。

      為使用者授予專案、表、模型、資源、函數或執行個體的操作許可權。可授與權限列表如下:

      對象

      許可權

      Table

      Describe、Select、Update、Alter、Drop、ShowHistory、Download

      Resource

      Read、Write、Download、Delete

      Function

      Read、Write、Download、Execute、Delete

      Package

      Read

      Project

      Read、Write、List、CreateTable、CreateInstance

    6. 選擇目標專案層級角色,單擊操作列的成员管理。選擇需授權的阿里雲主帳號或RAM使用者,單擊確定完成授權。若首次授權時未能搜尋到對應帳號,可下方手动添加成员地區添加。

  2. RAM許可權配置

    該步驟為執行資料移轉的RAM使用者配置MMS操作許可權,如MMS資料和中繼資料管理、遷移作業管理等。若使用阿里雲主帳號執行資料移轉可忽略該步驟。

    • 若當前RAM使用者具備管理MaxCompute的許可權,即AliyunMaxComputeFullAccess可忽略該步驟。

    • 若限制當前RAM使用者僅具備MMS操作許可權,則按照如下步驟操作:

      1. 登入RAM控制台

      2. 在左側導覽列選擇許可權管理 > 權限原則

      3. 權限原則頁面,單擊建立權限原則

      4. 建立權限原則頁面,選擇指令碼編輯。輸入以下權限原則:

        MMS所有操作的權限原則

        {
          "Version": "1",
          "Statement": [
            {
              "Effect": "Allow",
              "Action": [
                "odps:ListMmsDataSources",
                "odps:CreateMmsDataSource",
                "ram:GetRole",
                "odps:GetMmsDataSource",
                "odps:UpdateMmsDataSource",
                "odps:DeleteMmsDataSource",
                "odps:CreateMmsFetchMetadataJob",
                "odps:GetMmsFetchMetadataJob",
                "odps:ListMmsFetchMetadataJobLogs",
                "odps:ListMmsDbs",
                "odps:GetMmsDb",
                "odps:ListMmsTables",
                "odps:GetMmsTable",
                "odps:ListMmsPartitions",
                "odps:GetMmsPartition",
                "odps:ListMmsJobs",
                "odps:GetMmsJob",
                "odps:CreateMmsJob",
                "odps:DeleteMmsJob",
                "odps:StartMmsJob",
                "odps:StopMmsJob",
                "odps:RetryMmsJob",
                "odps:ListMmsTasks",
                "odps:GetMmsTask",
                "odps:ListMmsTaskLogs",
                "odps:StopMmsTask",
                "odps:StartMmsTask",
                "odps:RetryMmsTask",
                "odps:GetMmsAsyncTask",
                "odps:GetMmsProgress",
                "odps:GetMmsSpeed",
                "odps:CreateMmsAuthFile",
                "odps:ListMmsAgents",
                "odps:ListMmsTimers",
                "odps:GetMmsTimer",
                "odps:UpdateMmsTimer",
                "odps:ListMmsTimerLogs",
                "odps:CreateMmsTimer",
                "odps:UpdateMmsTables",
                "odps:UpdateMmsTable",
                "odps:UpdateMmsDb",
                "odps:ListNetworkLinks"
              ],
              "Resource": "*"
            }
          ]
        }

        MMS來源資料管理相關權限原則

        {
          "Version": "1",
          "Statement": [
            {
              "Effect": "Allow",
              "Action": [
                "odps:ListMmsDataSources",
                "odps:CreateMmsDataSource",
                "ram:GetRole",
                "odps:GetMmsDataSource",
                "odps:UpdateMmsDataSource",
                "odps:DeleteMmsDataSource",
                "odps:CreateMmsFetchMetadataJob",
                "odps:GetMmsFetchMetadataJob",
                "odps:ListMmsFetchMetadataJobLogs",
                "odps:ListMmsDbs",
                "odps:GetMmsDb",
                "odps:ListMmsTables",
                "odps:GetMmsTable",
                "odps:ListMmsPartitions",
                "odps:GetMmsPartition",
                "odps:GetMmsAsyncTask",
                "odps:GetMmsProgress",
                "odps:GetMmsSpeed",
                "odps:CreateMmsAuthFile",
                "odps:ListMmsAgents",
                "odps:UpdateMmsTables",
                "odps:UpdateMmsTable",
                "odps:UpdateMmsDb"
              ],
              "Resource": "*"
            }
          ]
        }

        MMS遷移作業系統管理權限策略

        {
          "Version": "1",
          "Statement": [
            {
              "Effect": "Allow",
              "Action": [
                "odps:ListMmsDataSources",
                "odps:GetMmsDataSource",
                "odps:CreateMmsFetchMetadataJob",
                "odps:GetMmsFetchMetadataJob",
                "odps:ListMmsFetchMetadataJobLogs",
                "odps:ListMmsDbs",
                "odps:GetMmsDb",
                "odps:ListMmsTables",
                "odps:GetMmsTable",
                "odps:ListMmsPartitions",
                "odps:GetMmsPartition",
                "odps:ListMmsJobs",
                "odps:GetMmsJob",
                "odps:CreateMmsJob",
                "odps:DeleteMmsJob",
                "odps:StartMmsJob",
                "odps:StopMmsJob",
                "odps:RetryMmsJob",
                "odps:ListMmsTasks",
                "odps:GetMmsTask",
                "odps:ListMmsTaskLogs",
                "odps:StopMmsTask",
                "odps:StartMmsTask",
                "odps:RetryMmsTask",
                "odps:GetMmsAsyncTask",
                "odps:GetMmsProgress",
                "odps:GetMmsSpeed",        
                "odps:ListMmsTimers",
                "odps:GetMmsTimer",
                "odps:UpdateMmsTimer",
                "odps:ListMmsTimerLogs",
                "odps:CreateMmsTimer"
              ],
              "Resource": "*"
            }
          ]
        }
      5. 單擊確定,在彈出的建立權限原則對話方塊,輸入自訂策略名稱稱,可以選擇為原則設定備忘及綁定標籤。

      6. 為RAM使用者添加自訂的MMS權限原則。具體操作,請參見管理RAM使用者的許可權

步驟五:準備Quota資源

資料移轉作業的執行過程需消耗計算資源,因此需要為執行遷移作業的MaxCompute專案綁定Quota計算資源。

  1. 登入MaxCompute控制台,在左上方選擇地區。

  2. 在左側導覽列,選擇管理配置 > 配额(Quota)管理 。

  3. Quota管理頁面,單擊新购Quota

    在購買頁面,規格類型處選擇Data Transmission Service

    建議購買訂用帳戶計算資源,以降低遷移成本。

    若已有可用的Data Transmission ServiceQuota資源,可忽略該步驟。

  4. 為執行遷移任務的MaxCompute專案設定Quota計算資源。

    • 使用預設計算Quota

      專案會設定預設計算Quota ,即該專案發起的作業會使用預設的Quota資源計算,無需其他設定。建立專案時可以直接選擇關聯預設Quota

    • 切換計算Quota:

      1. 在左側導覽列,選擇管理配置 > 项目管理

      2. 项目管理頁面,單擊目標專案操作列的管理

      3. 项目配置頁面,選擇参数配置頁簽。

      4. 基础属性地區,單擊编辑,按需修改相關配置。

      5. 数据传输服务授权Quota下拉框選擇該專案使用的計算Quota,單擊提交

  5. 新增資料來源時,將上一個步驟設定了Quota計算資源的專案配置為執行遷移任務的專案

    1. 在左側導覽列,選擇数据传输 > 迁移服务

    2. 迁移服务頁面,單擊数据源頁簽。

    3. 数据源頁簽,單擊新增数据源

    4. MaxCompute執行遷移作業的專案下拉框選擇上一個步驟設定了Quota計算資源的專案配置為執行遷移任務的專案