全部產品
Search
文件中心

MaxCompute:建立並使用MaxCompute表

更新時間:Sep 05, 2024

您可通過MaxCompute的SQL語句及DataWorks提供的可視化方式,建立與管理MaxCompute表。相比SQL方式,可視化方式操作更加便捷。本文為您介紹如何使用可視化方式建立及管理MaxCompute表。

前提條件

已建立MaxCompute資料來源並綁定至資料開發(DataStudio)。詳情請參見建立MaxCompute資料來源開發前準備:綁定資料來源或叢集

背景資訊

  • 表操作原則

    建立與操作MaxCompute表,遵循MaxCompute表操作的基本要求。例如,表建立成功後不支援產出欄位。詳情請參見MaxCompute表操作使用限制

  • 表物理屬性變更

    MaxCompute表的物理屬性變更操作,均可通過MaxCompute SQL命令執行,詳情請參見表操作。由於DataWorks上操作MaxCompute存在一定的許可權管控,RAM使用者(子帳號)在某些情境下通過命令動作表會報錯,詳情請參見MaxCompute資料許可權控制詳情

  • 中繼資料更新延遲

    中繼資料操作可能存在一定延遲,通過可視化方式建立、更新或刪除表後,若介面搜尋不到表,或刪除後表仍可見,可通過資料地圖的手工同步工具,手動同步相關操作結果。詳情請參見手工同步工具

進入資料開發(DataStudio)

登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的資料建模與開發 > 資料開發,在下拉框中選擇對應工作空間後單擊進入資料開發

建立MaxCompute表

您可在DataWorks表管理目錄中建立,也可在具體商務程序下,針對該商務程序建立相關表。DataWorks支援通過DDL與可視化編輯兩種方式分別建立開發表與生產表。

建立表入口

  • 基於表管理建立

    在資料開發(DataStudio)左側導覽列選擇表管理,單擊建立表徵圖建立。若左側導覽列無表管理模組,可參考介面定製添加。

  • 基於具體商務程序建立

    DataWorks通過商務程序組織與管理代碼,您可基於商務程序建立該業務的相關表。若還未建立商務程序,請先參考商務程序建立。在已有商務程序的情況下,可按右鍵相應商務程序,選擇MaxCompute >

配置表基本資料

按上述步驟建立表後,將進入表編輯頁面。在該頁面,DataWorks支援使用DDL及可視化兩種方式配置表資訊,具體如下:

  • 使用DDL模式配置表

    您可單擊表編輯頁面中的ddl表徵圖,通過MaxCompute標準的建表語句產生MaxCompute表結構。使用DDL產生表結構後,DataWorks便自動填滿表編輯頁面的相關配置。若您習慣使用代碼編寫任務,可使用該方式。

    說明
    • 由於表名稱在進入表編輯頁面前已定義,因此,在DDL建表命令中不支援修改表名稱,否則將報錯。

    • DDL模式僅支援使用命令定義表的物理屬性,表的業務屬性可在DDL建表完成並將配置填充介面後,在表編輯頁面進行二次編輯。

  • 使用可視化介面配置表

    您可通過表編輯頁面中各項配置指引,依次配置表相關屬性。若您希望使用便捷的可視化操作,可使用該方式。下文以可視化操作樣本,為您介紹如何配置表的相關資訊。

    1. 配置基本屬性。配置表基本屬性主要配置項如下。

      配置項

      說明

      中文名

      定義表的中文名稱。

      主題

      DataWorks的主題相當於檔案夾。定義表所屬的一級檔案夾與二級檔案夾。您可基於業務用途對錶進行歸類,將同類表掛載至相同檔案夾中。

      說明

      一級主題、二級主題僅為DataWorks上表管理檔案夾的呈現形式,旨在方便您更好地管理表。 後續在表管理頁面可通過主題快速尋找當前表,如果沒有可用的主題,可參考定義表主題建立。

    2. 物理模型設計。物理模型設計配置項說明如下。

      配置項

      說明

      層級

      表所屬的物理數倉分層。層級用於定義和管理資料倉儲分層,通常可劃分為資料引入層ODS(Operational Data Store)、公用維度層DIM(Dimension)、詳細資料層DWD(Data Warehouse Detail)、摘要資料層DWS(Data Warehouse Summary)、應用資料層ADS(Application Data Service)。您可根據表的業務用途,將其掛載至合適的層級。

      說明

      您也可自訂層級。詳細操作請參見層級管理

      物理分類

      定義表的物理分類,即基於業務使用視角對錶進行更詳細的分類。通常包括基礎業務層、進階業務層和其它。

      說明

      您也可自訂物理分類。詳細操作請參見分類管理

      生命週期

      定義表生命週期。

      分區類型

      定義表為分區表還是非分區表。MaxCompute分區表與非分區表介紹,請參見分區

      表類型

      定義表為內部表還是外部表格。查詢表資料時,內部表會匯入真實資料,查詢資料速度較快;外部表格無需匯入資料即可查詢,較節省記憶體。MaxCompute內部表與外部表格介紹,請參見

    3. 表結構設計。表結構主要配置項說明如下。

      配置

      說明

      欄位類型

      定義欄位資料類型,僅支援下拉選擇MaxCompute支援的資料類型。MaxCompute資料類型介紹,請參見資料類型版本說明

      欄位安全等級

      定義欄位安全等級,僅在MaxCompute專案開啟Label級許可權控制的情況下,該配置項才可見。MaxCompute欄位安全等級介紹,請參見Label許可權控制

      主鍵

      定義表業務主鍵,由於MaxCompute表本身不支援主鍵,所以此處主鍵僅作為業務維度進行管理。

提交並發布MaxCompute表

表結構定義完成後,您需將其提交至開發環境與生產環境。

說明

不同模式工作空間,MaxCompute表的提交發布說明如下:

  • 簡單模式:僅需將表提交至生產環境。

  • 標準模式:僅空間管理員營運角色發行就緒表至生產環境。如您需發行資料表至生產環境,則可授予使用者相應許可權。授權操作,詳情請參見增加空間成員並管理成員角色許可權

工作空間模式介紹,詳情請參見必讀:簡單模式和標準模式的區別

操作

描述

從開發環境載入

用於從開發環境載入開發表的相關資訊,並顯示至當前頁面。

說明

僅當表已被提交至開發環境後,才可執行該操作。執行該操作後,開發環境已建立的表資訊會覆蓋當前頁面的表資訊。

提交到開發環境

提交表至DataWorks的開發環境,即在開發環境所添加的MaxCompute資料來源對應的MaxCompute專案中建立當前表。提交成功後,可執行如下操作:

從生產環境載入

用於從生產環境載入生產表的相關資訊,並顯示至當前頁面。

說明

僅當表已被提交至生產環境後,才可執行該操作。執行該操作後,生產環境已建立的表資訊會覆蓋當前頁面的表資訊。

提交到生產環境

提交表至DataWorks的生產環境,即在生產環境所添加的MaxCompute資料來源對應的MaxCompute專案中建立當前表。提交成功後,可執行如下操作:

MaxCompute表資料寫入與匯出

您可參考以下內容進行MaxCompute資料的匯入匯出。

MaxCompute表資料寫入

您可通過Data Integration任務MaxCompute節點任務向MaxCompute表中寫入資料,此外,DataWorks還支援通過上傳資料功能將本機資料匯入MaxCompute表中。

MaxCompute表資料匯出

在資料開發(DataStudio)查詢資料後,您可通過查詢結果介面的下載入口將表資料匯出至本地。預設單次最多可下載1W條資料,租用戶系統管理員、租戶安全性系統管理員可前往資訊安全中心的資料查詢與分析管控介面,設定單次可下載條數的上限。

說明

超過1W條的資料,可通過MaxCompute用戶端匯出,使用Tunnel命令匯出。

查詢MaxCompute表資料

您可使用ODPS SQL節點臨時查詢功能,通過SQL語句查詢MaxCompute表的資料。

許可權預設情況說明

簡單模式工作空間無法做到細粒度許可權控制及開發生產隔離,本文以標準模式工作空間樣本說明。

RAM使用者被添加至工作空間成為空白間成員後,其資料存取權限預設情況如下。

權限類別

描述

MaxCompute開發專案許可權

DataWorks通過空間級預設角色與開發環境MaxCompute引擎Role的映射關係,讓被授予空間角色的RAM使用者(子帳號)擁有該角色映射的開發引擎許可權,預設擁有開發環境對應的引擎專案許可權,但無生產環境對應的引擎專案許可權。

MaxCompute生產專案許可權

除被授予調度訪問身份的RAM使用者(子帳號)擁有生產環境MaxCompute專案較大許可權外,其他RAM使用者(子帳號)沒有生產環境專案許可權。如需操作生產表,請前往資訊安全中心申請許可權。

DataWorks為您提供了預設的審批次程序,同時,也支援管理者自訂審批次程序。

更多關於MaxCompute資料存取權限控制說明,請參見MaxCompute資料許可權控制詳情

資料訪問行為說明

MaxCompute支援跨專案查詢表,因此,在資料開發(DataStudio)介面可通過指定專案名稱的方式,跨專案查詢DataWorks工作空間中的生產資料。跨專案訪問表的方式及各介面執行所使用的帳號說明,請見下表。

說明
  • 不同環境添加的MaxCompute資料來源及環境配置的執行帳號,可查看資料開發中的資料來源綁定資訊,詳情請參見開發前準備:綁定資料來源或叢集

  • DataWorks標準模式工作空間下,開發環境預設使用任務執行者個人身份執行任務,生產調度環境預設使用某雲帳號執行任務,即調度訪問身份。詳情請參見建立MaxCompute資料來源

程式碼範例

開發環境(資料開發、開發環境營運中心)執行代碼

生產環境(生產環境營運中心)執行代碼

訪問開發專案中的開發表:

select col1 from projectname_dev.tablename;

使用任務執行者個人云帳號訪問開發表。

  • RAM使用者(子帳號)執行相關任務,則使用RAM使用者(子帳號)個人云帳號訪問開發表。

  • 阿里雲主帳號執行相關任務,則使用阿里雲主帳號訪問開發表。

使用調度訪問身份訪問開發表。

訪問生產專案中的生產表:

select col1 from projectname.tablename;

使用任務執行者個人云帳號訪問生產表。

說明

由於生產資料安全控制,個人云帳號預設無許可權訪問生產表,需前往資訊安全中心進行申請。DataWorks提供預設審批次程序,支援管理者自訂審批次程序。

使用調度訪問身份訪問生產表。

在目標類型環境(例如,開發環境)執行語句,訪問相應環境中的表(即開發表):

select col1 from tablename;

在開發環境執行時,使用任務執行者個人云帳號訪問身份,訪問開發引擎中目標表。

在生產環境執行時,使用調度訪問身份,訪問生產引擎中目標表。

查看MaxCompute資料資產

您可通過以下內容查看MaxCompute相關資料資產。

查看租戶下生產表

您可在資料開發的公用表模組,查看當前地區下您阿里雲帳號中的所有生產表。

查看中繼資料

您可前往資料地圖,查看MaxCompute表詳情與中繼資料資訊。

查看錶血緣

資料地圖表詳情頁,您可查看該表的上下遊血緣。

說明

若要定位空間下操作該表的任務,可通過程式碼搜尋功能進行檢索。

批量管理MaxCompute表

您可通過以下內容批量管理MaxCompute表。

大量刪除MaxCompute表

您可前往資料地圖的我的資料,大量刪除您個人名下的表。

說明

由於生產資料安全管控,您無法直接通過命令刪除生產表。若要刪除非您名下的表,需前往資訊安全中心申請表許可權。

批量轉交表責任人

您可前往資料地圖的我的資料,批量轉交您個人名下的表。

批量修改表生命週期

您可前往資料地圖的我的資料,批量修改您個人名下表的生命週期。

說明

單表生命週期可通過表管理進行修改,詳情請參見建立MaxCompute表

基於商務程序管理表

使用表管理建立的表,可通過匯入的方式添加至資料開發具體的商務程序中,並基於商務程序來管理、查看該業務相關的表。具體操作如下圖所示。從引擎添加

  • 被引用:指該表在當前商務程序中有被查詢(select)。

  • 被寫入:指當前商務程序中存在寫入資料至該表的操作(insert overwrite)。