阿里雲資料湖構建(Data Lake Formation,簡稱DLF)是一款全託管的統一中繼資料和資料存放區及管理平台,旨在為客戶提供中繼資料管理、儲存管理、許可權管理、儲存分析和儲存最佳化等功能。DataWorksData Integration支援寫入DLF資料來源,本文將為您介紹DLF的使用詳情。
使用限制
Data Lake Formation 資料來源僅支援在Data Integration使用,且僅支援Serverless資源群組。
建立資料來源
進入資料來源頁面。
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,在下拉框中選擇對應工作空間後單擊進入管理中心。
進入工作空間管理中心頁面後,單擊左側導覽列的資料來源,進入資料來源頁面。
單擊新增資料來源按鈕,搜尋並選擇Data Lake Formation,來建立資料來源,可參考以下表格內容:
參數
說明
資料來源名稱
可自訂資料來源名稱。資料來源名稱在工作空間內唯一;必須以字母、數字、底線組合,且不能以數字和底線開頭。
配置模式
僅支援阿里雲執行個體模式。
Endpoint
下拉選擇DLF的引擎執行個體的Endpoint地址。
訪問身份
可選擇如下內容:
阿里雲主帳號。
阿里雲RAM子帳號。
阿里雲RAM角色。
可按需求進行選擇。
說明若訪問身份選擇了RAM子帳號或RAM角色,則需對子帳號或角色授予以下許可權。
需要在RAM存取控制將系統策略AliyunDataWorksDIAccessDLF授權給RAM子帳號或RAM角色,以開通DLF訪問中繼資料的RAM許可權,詳情參見:管理RAM使用者的許可權。
在資料湖構建控制台授予角色或子帳號待同步資料表的Data Editor許可權。
DLF資料目錄(Catalog)
選擇DataWorks同地區下的DLF資料目錄。
資料庫名稱
選擇資料目錄下的資料庫。
以上內容配置完成後,需在串連配置模組測試該資料來源與Serverless資源群組的連通性,若連通性測試為可連通,即可單擊完成編輯,完成該資料來源的建立。若連通性測試失敗,則需參考網路連通配置進行排查。
建立Data Integration任務
在DataWorks的Data Integration中,支援使用Data Lake Formation 資料來源,詳情可參見:同步資料至Data Lake Formation。
附錄:指令碼Demo與參數說明
離線任務指令碼配置方式
如果您配置離線任務時使用指令碼模式的方式進行配置,您需要按照統一的指令碼格式要求,在任務指令碼中編寫相應的參數,詳情請參見指令碼模式配置,以下為您介紹指令碼模式下資料來源的參數配置詳情。
Reader指令碼Demo
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "dlf",
"parameter": {
"datasource": "guxuan_dlf",
"table": "auto_ob_3088545_0523",
"column": [
"id",
"col1",
"col2",
"col3"
],
"where": "id > 1"
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "stream",
"parameter": {
"print": false
},
"name": "Writer",
"category": "writer"
}
],
"setting": {
"errorLimit": {
"record": ""//錯誤記錄數。
},
"speed": {
"throttle":true,//當throttle值為false時,mbps參數不生效,表示不限流;當throttle值為true時,表示限流。"concurrent":20, //作業並發數。"mbps":"12"//限流,此處1mbps = 1MB/s。
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}Reader指令碼參數
參數 | 描述 | 是否必選 |
datasource | DLF資料來源。 | 是 |
table | 表名。 | 是 |
column | 列名。 | 是 |
where | 過濾條件。 | 否 |
Writer指令碼Demo
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "stream",
"parameter": {
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "dlf",
"parameter": {
"datasource": "guxuan_dlf",
"column": [
"id",
"col1",
"col2",
"col3"
],
"table": "auto_ob_3088545_0523"
},
"name": "Writer",
"category": "writer"
}
],
"setting": {
"errorLimit": {
"record": ""//錯誤記錄數。
},
"speed": {
"throttle":true,//當throttle值為false時,mbps參數不生效,表示不限流;當throttle值為true時,表示限流。"concurrent":20, //作業並發數。"mbps":"12"//限流,此處1mbps = 1MB/s。
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}Writer指令碼參數
參數 | 描述 | 是否必選 | 預設值 |
datasource | DLF資料來源。 | 是 | 無 |
table | 表名。 | 是 | 無 |
column | 列名。 | 是 | 無 |