通過DataWorks控制台將Tablestore中的全量資料匯出到MaxCompute中。

步驟一:新增Tablestore資料來源

將Tablestore資料庫添加為資料來源,具體操作步驟如下:

  1. 進入Data Integration。
    1. 以專案系統管理員身份登入DataWorks控制台
      说明 僅專案系統管理員角色可以新增資料來源,其他角色的成員僅可查看資料來源。
    2. 在左側導覽列,單擊工作空間列表後,選擇地區。
    3. 工作空間列表頁面,單擊目標工作空間操作列的Data Integration
  2. 新增資料來源。
    1. 在Data Integration控制台,單擊資料來源管理
    2. 資料來源管理頁面,單擊新增資料來源
    3. 新增資料來源對話方塊的NoSQL地區,選擇資料來源類型為OTS
    4. 新增OTS資料來源對話方塊,配置參數。
      fig_otssource
      參數 說明
      資料來源名稱 資料來源的名稱,例如gps_data。
      資料來源描述 資料來源的描述資訊。
      Endpoint 填寫目標Tablestore執行個體的服務地址
      • 如果Tablestore執行個體和MaxCompute在同一個地區,填寫經典網地址。
      • 如果Tablestore執行個體和MaxCompute不在同一個地區,填寫公網地址。
      • 不能填寫VPC地址。
      Tablestore執行個體名稱 Tablestore執行個體的名稱。
      AccessKey ID 登入賬戶的AccessKey ID和AccessKey Secret,擷取方式請參見建立AccessKey
      AccessKey Secret
    5. 單擊測試連通性,測試資料來源的連通狀態。
  3. 單擊完成
    資料來源管理頁面,會顯示該資料來源資訊。

步驟二:新增MaxCompute資料來源

操作與步驟一類似,只需在Big Data Storage地區,選擇資料來源類型為MaxCompute(ODPS)

本樣本中,該資料來源名稱使用OTS2ODPS,如下圖所示。

fig_odps_001

步驟三:配置同步任務

建立並配置Tablestore到MaxCompute的同步任務,具體操作步驟如下:

  1. 進入資料開發。
    1. 以專案系統管理員身份登入DataWorks控制台
    2. 在左側導覽列,單擊工作空間列表後,選擇地區。
    3. 工作空間列表頁面,單擊目標工作空間操作列的資料開發
  2. 在DataStudio控制台的資料開發頁面,單擊商務程序節點下的目標商務程序。

    如果需要建立商務程序,請參見步驟二:建立商務程序

  3. 建立同步任務節點。
    每個同步任務都需建立一個相應的節點。
    1. Data Integration節點上右鍵選擇建立 > 離線同步
      您也可以將滑鼠移至上方在fig_addnode表徵圖,選擇Data Integration > 離線同步來建立節點。
    2. 建立節點對話方塊,輸入節點名稱,選擇一個目標檔案夾。
      fig_newtask
    3. 單擊提交
  4. 配置資料來源。
    1. Data Integration節點下,雙擊同步任務節點。
    2. 在同步任務節點的編輯頁面的選擇資料來源地區,配置資料來源和資料去向。
      • 配置資料來源。

        選擇資料來源資料來源OTS

      • 配置資料去向。

        選擇資料去向資料來源ODPS,並選擇對應的

      fig_ots2odps
    3. 單擊script表徵圖或者點擊轉換為指令碼,進行指令碼配置。

      Tablestore僅支援指令碼模式配置,使用過程中涉及Tablestore(OTS) Reader和MaxCompute Writer外掛程式的配置。具體操作,請參見配置Tablestore(OTS) Readert1681652.html#concept_jjy_y4m_q2b

      在指令碼配置頁面,請根據如下樣本完成配置。
      {
      "type": "job",
      "version": "1.0",
      "configuration": {
      "setting": {
        "errorLimit": {
          "record": "0"    # 能夠允許的最大錯誤數。
        },
        "speed": {
          "mbps": "1",   # 最大的流量,單位為MB。
          "concurrent": "1"  # 並發數。
        }
      },
      "reader": {
        "plugin": "ots",  # 讀取的外掛程式名稱。
        "parameter": {
          "datasource": "",  # 資料來源名稱。
          "table": "",  # 資料表名稱。
          "column": [  # 需要匯出到MaxCompute中去的Tablestore中的列名。
            {
              "name": "column1"
            },
            {
              "name": "column2"
            },
            {
              "name": "column3"
            },
            {
              "name": "column4"
            },
            {
              "name": "column5"
            }
          ],
          "range": {  # 需要匯出的資料範圍,如果是全量匯出,則需要從INF_MIN到INF_MAX。
            "begin": [ # 需要匯出資料的起始位置,最小的位置是INF_MIN。begin中的配置項數目個數和Tablestore中相應表的主鍵列個數一致。
              {
                "type": "INF_MIN"
              },
              {
                "type": "INF_MIN"
              },
              {
                "type": "STRING",  # 此配置項表示第三列的起始位置是begin1。
                "value": "begin1"
              },
              {
                "type": "INT",  # 此配置項表示第四列的起始位置是0。
                "value": "0"
              }
            ],
            "end": [  # 匯出資料的結束位置。
              {
                "type": "INF_MAX"
              },
              {
                "type": "INF_MAX"
              },
              {
                "type": "STRING",
                "value": "end1"
              },
              {
                "type": "INT",
                "value": "100"
              }
            ],
            "split": [  # 配置分區範圍,一般可以不配置,如果效能較差,可以加入DingTalk群23307953聯絡Tablestore技術支援人員處理。
              {
                "type": "STRING",
                "value": "splitPoint1"
              },
              {
                "type": "STRING",
                "value": "splitPoint2"
              },
              {
                "type": "STRING",
                "value": "splitPoint3"
              }
            ]
          }
        }
      },
      "writer": {
        "plugin": "odps",  # MaxCompute寫入的外掛程式名。
        "parameter": {
          "datasource": "",  # MaxCompute的資料來源名稱。
          "column": [],  # MaxCompute中的列名,列名順序需對應TableStore中的列名順序。
          "table": "",  # MaxCompute中的表名,需要提前建立好,否則任務執行會失敗。
          "partition": "",  # 如果表為分區表,則必填。如果表為非分區表,則不能填寫。需要寫入資料表的分區資訊,必須指定到最後一級分區。
          "truncate": false  # 是否清空之前的資料。
        }
      }
      }
      }
      您可以通過begin和end來設定匯出的資料範圍,假設表包含pk1(String類型)和pk2(Integer類型)兩個主鍵列。
      • 如果需要匯出全表資料,則配置樣本如下:
        "begin": [ # 需要匯出資料的起始位置。
          {
            "type": "INF_MIN"
          },
          {
            "type": "INF_MIN"
          }
        ],
        "end": [  # 需要匯出資料的結束位置。
          {
            "type": "INF_MAX"
          },
          {
            "type": "INF_MAX"
          }
        ],
      • 如果需要匯出pk1="tablestore" 的行,則配置樣本如下:
        "begin": [ # 匯出資料的起始位置。
          {
            "type": "STRING",
            "value": "tablestore"
          },
          {
            "type": "INF_MIN"
          }
        ],
        "end": [  # 匯出資料的結束位置。
          {
            "type": "STRING",
            "value": "tablestore"
          },
          {
            "type": "INF_MAX"
          }
        ],
    4. 單擊save表徵圖,儲存資料來源配置。
  5. 運行同步任務。
    1. 單擊start表徵圖。
    2. 參數對話方塊,選擇調度的資源群組。
    3. 單擊確定,開始運行任務。
      運行結束後,在作業記錄頁簽中可以查看任務是否成功和匯出的資料行數。
  6. 配置調度參數。
    通過調度配置,可以配置同步任務的執行時間、重跑屬性、調度依賴等。
    1. Data Integration節點下,雙擊同步任務節點。
    2. 在同步任務節點的編輯頁面的右側單擊調度配置,進行調度參數配置,詳情請參見步驟四:設定周期和依賴
  7. 提交同步任務。
    1. 在同步任務節點的編輯頁面,單擊submit表徵圖。
    2. 提交新版本對話方塊,輸入備忘資訊。
    3. 單擊確認
      將同步任務提交到調度系統後,調度系統會根據配置的調度參數,自動定時執行同步任務。

步驟四:查看同步任務

  1. 進入營運中心。
    说明 您也可以在DataStudio控制台的右上方單擊營運中心,快速進入營運中心。
    1. 以專案系統管理員身份登入DataWorks控制台
    2. 在左側導覽列,單擊工作空間列表後,選擇地區。
    3. 工作空間列表頁面,移動滑鼠到工作空間操作列的fig_more表徵圖後選擇營運中心
  2. 在營運中心控制台,選擇周期任務營運 > 周期任務
  3. 周期任務頁面,查看提交的同步任務詳情。
    • 在左側導覽列中,選擇周期任務營運 > 周期執行個體,可以查看當天需要啟動並執行周期任務。單擊執行個體名稱,可以查看任務運行詳情。
    • 當單個任務在運行中或運行結束後,可以查看日誌。

步驟五:查看匯入到MaxCompute中的資料

  1. 進入資料地圖。
    1. 以專案系統管理員身份登入DataWorks控制台
    2. 選擇地區,在左側導覽列,單擊工作空間列表
    3. 工作空間列表頁面,單擊工作空間操作地區的進入資料地圖
  2. 在資料地圖控制台的導覽列,選擇我的資料 > 我管理的資料
  3. 我管理的資料頁簽,單擊匯入資料的表名稱。
  4. 在表詳情頁面,單擊資料預覽頁簽,查看匯入的資料。