您可通過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與可視化編輯兩種方式分別創建開發表與生產表。
新建表入口
基于表管理新建
基于具體業務流程新建
DataWorks通過業務流程組織與管理代碼,您可基于業務流程創建該業務的相關表。若還未創建業務流程,請先參考業務流程創建。在已有業務流程的情況下,可右鍵單擊相應業務流程,選擇 。
配置表基本信息
按上述步驟創建表后,將進入表編輯頁面。在該頁面,DataWorks支持使用DDL及可視化兩種方式配置表信息,具體如下:
使用DDL模式配置表
您可單擊表編輯頁面中的圖標,通過MaxCompute標準的建表語句生成MaxCompute表結構。使用DDL生成表結構后,DataWorks便自動填充表編輯頁面的相關配置。若您習慣使用代碼編寫任務,可使用該方式。
說明由于表名稱在進入表編輯頁面前已定義,因此,在DDL建表命令中不支持修改表名稱,否則將報錯。
DDL模式僅支持使用命令定義表的物理屬性,表的業務屬性可在DDL建表完成并將配置填充界面后,在表編輯頁面進行二次編輯。
使用可視化界面配置表
您可通過表編輯頁面中各項配置指引,依次配置表相關屬性。若您希望使用便捷的可視化操作,可使用該方式。下文以可視化操作示例,為您介紹如何配置表的相關信息。
配置基本屬性。主要配置項如下。
配置項
說明
中文名
定義表的中文名稱。
主題
DataWorks的主題相當于文件夾。定義表所屬的一級文件夾與二級文件夾。您可基于業務用途對表進行歸類,將同類表掛載至相同文件夾中。
物理模型設計。配置項說明如下。
配置項
說明
層級
表所屬的物理數倉分層。層級用于定義和管理數據倉庫分層,通常可劃分為數據引入層ODS(Operational Data Store)、公共維度層DIM(Dimension)、明細數據層DWD(Data Warehouse Detail)、匯總數據層DWS(Data Warehouse Summary)、應用數據層ADS(Application Data Service)。您可根據表的業務用途,將其掛載至合適的層級。
說明您也可自定義層級。詳細操作請參見層級管理。
物理分類
定義表的物理分類,即基于業務使用視角對表進行更詳細的分類。通常包括基礎業務層、高級業務層和其它。
說明您也可自定義物理分類。詳細操作請參見分類管理。
生命周期
定義表生命周期。
分區類型
定義表為分區表還是非分區表。MaxCompute分區表與非分區表介紹,請參見分區。
表類型
定義表為內部表還是外部表。查詢表數據時,內部表會導入真實數據,查詢數據速度較快;外部表無需導入數據即可查詢,較節省內存。MaxCompute內部表與外部表介紹,請參見表。
表結構設計。主要配置項說明如下。
配置
說明
字段類型
定義字段數據類型,僅支持下拉選擇MaxCompute支持的數據類型。MaxCompute數據類型介紹,請參見數據類型版本說明。
字段安全等級
定義字段安全等級,僅在MaxCompute項目開啟Label級權限控制的情況下,該配置項才可見。MaxCompute字段安全等級介紹,請參見Label權限控制。
主鍵
定義表業務主鍵,由于MaxCompute表本身不支持主鍵,所以此處主鍵僅作為業務維度進行管理。
提交并發布MaxCompute表
表結構定義完成后,您需將其提交至開發環境與生產環境。
不同模式工作空間,MaxCompute表的提交發布說明如下:
簡單模式:僅需將表提交至生產環境。
標準模式:僅空間管理員或運維角色可以發布表至生產環境。如您需發布表至生產環境,則可授予用戶相應權限。授權操作,詳情請參見添加空間成員并管理成員角色權限。
工作空間模式介紹,詳情請參見必讀:簡單模式和標準模式的區別。
操作 | 描述 |
從開發環境加載 | 用于從開發環境加載開發表的相關信息,并顯示至當前頁面。 說明 僅當表已被提交至開發環境后,才可執行該操作。執行該操作后,開發環境已創建的表信息會覆蓋當前頁面的表信息。 |
提交到開發環境 | 提交表至DataWorks的開發環境,即在開發環境所添加的MaxCompute數據源對應的MaxCompute項目中創建當前表。提交成功后,可執行如下操作:
|
從生產環境加載 | 用于從生產環境加載生產表的相關信息,并顯示至當前頁面。 說明 僅當表已被提交至生產環境后,才可執行該操作。執行該操作后,生產環境已創建的表信息會覆蓋當前頁面的表信息。 |
提交到生產環境 | 提交表至DataWorks的生產環境,即在生產環境所添加的MaxCompute數據源對應的MaxCompute項目中創建當前表。提交成功后,可執行如下操作:
|
MaxCompute表數據寫入與導出
您可參考以下內容進行MaxCompute數據的導入導出。
MaxCompute表數據寫入
您可通過數據集成任務、MaxCompute節點任務向MaxCompute表中寫入數據,此外,DataWorks還支持通過上傳數據功能將本地數據導入MaxCompute表中。
MaxCompute表數據導出
查詢MaxCompute表數據
您可使用ODPS SQL節點或臨時查詢功能,通過SQL語句查詢MaxCompute表的數據。
權限預設情況說明
簡單模式工作空間無法做到細粒度權限控制及開發生產隔離,本文以標準模式工作空間示例說明。
RAM用戶被添加至工作空間成為空間成員后,其數據訪問權限預設情況如下。
權限類別 | 描述 |
MaxCompute開發項目權限 | DataWorks通過空間級預設角色與開發環境MaxCompute引擎Role的映射關系,讓被授予空間角色的RAM用戶(子賬號)擁有該角色映射的開發引擎權限,默認擁有開發環境對應的引擎項目權限,但無生產環境對應的引擎項目權限。 |
MaxCompute生產項目權限 | 除被授予調度訪問身份的RAM用戶(子賬號)擁有生產環境MaxCompute項目較大權限外,其他RAM用戶(子賬號)沒有生產環境項目權限。如需操作生產表,請前往安全中心申請權限。 DataWorks為您提供了默認的審批流程,同時,也支持管理者自定義審批流程。 |
更多關于MaxCompute數據訪問權限控制說明,請參見MaxCompute數據權限控制詳情。
數據訪問行為說明
MaxCompute支持跨項目查詢表,因此,在數據開發(DataStudio)界面可通過指定項目名稱的方式,跨項目查詢DataWorks工作空間中的生產數據。跨項目訪問表的方式及各界面執行所使用的賬號說明,請見下表。
不同環境添加的MaxCompute數據源及環境配置的執行賬號,可查看數據開發中的數據源綁定信息,詳情請參見開發前準備:綁定數據源或集群。
DataWorks標準模式工作空間下,開發環境默認使用任務執行者個人身份執行任務,生產調度環境默認使用某云賬號執行任務,即調度訪問身份。詳情請參見創建MaxCompute數據源。
代碼示例 | 開發環境(數據開發、開發環境運維中心)執行代碼 | 生產環境(生產環境運維中心)執行代碼 |
訪問開發項目中的開發表:
| 使用任務執行者個人云賬號訪問開發表。
| 使用調度訪問身份訪問開發表。 |
訪問生產項目中的生產表:
| 使用任務執行者個人云賬號訪問生產表。 說明 由于生產數據安全控制,個人云賬號默認無權限訪問生產表,需前往安全中心進行申請。DataWorks提供默認審批流程,支持管理者自定義審批流程。 | 使用調度訪問身份訪問生產表。 |
在目標類型環境(例如,開發環境)執行語句,訪問相應環境中的表(即開發表):
| 在開發環境執行時,使用任務執行者個人云賬號訪問身份,訪問開發引擎中目標表。 | 在生產環境執行時,使用調度訪問身份,訪問生產引擎中目標表。 |
查看MaxCompute數據資產
您可通過以下內容查看MaxCompute相關數據資產。
查看租戶下生產表
您可在數據開發的公共表模塊,查看當前地域下您阿里云賬號中的所有生產表。
查看元數據
您可前往數據地圖,查看MaxCompute表詳情與元數據信息。
查看表血緣
批量管理MaxCompute表
您可通過以下內容批量管理MaxCompute表。
批量刪除MaxCompute表
批量轉交表責任人
您可前往數據地圖的我的數據,批量轉交您個人名下的表。
批量修改表生命周期
您可前往數據地圖的我的數據,批量修改您個人名下表的生命周期。
單表生命周期可通過表管理進行修改,詳情請參見新建MaxCompute表。
基于業務流程管理表
使用表管理新建的表,可通過導入的方式添加至數據開發具體的業務流程中,并基于業務流程來管理、查看該業務相關的表。具體操作如下圖所示。
被引用:指該表在當前業務流程中有被查詢(select)。
被寫入:指當前業務流程中存在寫入數據至該表的操作(insert overwrite)。