若您要使用DataWorks進行AnalyticDB for PostgreSQL任務的開發、管理,需先將您的AnalyticDB for PostgreSQL實例創建為DataWorks的AnalyticDB for PostgreSQL數據源。創建完成后,可在DataWorks的各功能模塊使用該數據源連接AnalyticDB for PostgreSQL實例,進行相應的數據同步、數據開發、數據分析等操作。
前提條件
已購買AnalyticDB for PostgreSQL實例并創建數據庫,詳情請參見創建實例、數據庫管理。
說明建議購買AnalyticDB for PostgreSQL實例時,地域與創建AnalyticDB for PostgreSQL數據源的DataWorks工作空間地域一致。若地域不一致,則只能創建為跨地域的數據源,此類數據源無法在DataWorks的數據開發(DataStudio)模塊綁定,即無法用于數據開發或周期性調度任務,僅可進行數據同步任務。
已購買所需的DataWorks資源組并完成資源組配置。
AnalyticDB for PostgreSQL實例支持Serverless資源組(推薦)和舊版獨享資源組(獨享數據集成資源組、獨享調度資源組、獨享數據服務資源組)。AnalyticDB for PostgreSQL數據源創建完成后,可用于進行數據同步、計算任務開發與調度、生成API提供數據服務等應用場景。
說明您需根據應用場景提前準備對應的資源組并完成配置,在創建AnalyticDB for PostgreSQL數據源時確保與對應資源組間網絡連通。資源組的介紹與配置引導,請參見DataWorks資源組概述。
已創建或加入目標工作空間。
您需在目標工作空間中,將AnalyticDB for PostgreSQL實例創建為該工作空間的數據源,用于后續在該工作空間進行開發操作。同時,需將購買的DataWorks資源組綁定至該工作空間,確保數據源與資源組網絡連通。創建工作空間,詳情請參見創建并管理工作空間。
說明同一個AnalyticDB for PostgreSQL實例可在多個DataWorks工作空間中被創建為數據源。
使用限制
僅當AnalyticDB for PostgreSQL實例和DataWorks工作空間屬于同地域、同一阿里云賬號時,基于該實例創建的數據源才可在DataWorks的數據開發(DataStudio)模塊綁定,即此類數據源才可用于數據開發或周期性調度任務。
支持跨賬號創建數據源,即支持將其他阿里云賬號下的AnalyticDB for PostgreSQL實例創建為數據源,但數據源創建完成后僅支持通過RAM角色訪問對應實例,并且該類數據源不能用于數據開發或周期性調度任務。
使用連接串模式創建的數據源不支持用于數據開發或周期性調度任務,只能用于數據同步。詳情請參見創建數據源。
僅支持使用Serverless資源組(推薦)和舊版獨享數據集成、調度資源組運行AnalyticDB for PostgreSQL任務。
基于AnalyticDB for PostgreSQL數據源創建數據服務API,推薦使用Serverless資源組。
操作前準備:權限說明與配置
使用RAM用戶(即子賬號)或RAM角色創建數據源,需擁有如下任意權限:
僅擁有項目所有者、空間管理員或運維空間角色的RAM用戶或RAM角色可創建數據源,授權詳情請參見添加空間成員并管理成員角色權限。
僅擁有AliyunDataWorksFullAccess或AdministratorAccess策略權限的RAM用戶或RAM角色可創建數據源,授權詳情請參見為RAM用戶授權、為RAM角色授權。
若執行跨賬號場景創建數據源,則還需執行如下權限配置。
跨阿里云賬號創建AnalyticDB for PostgreSQL數據源時,僅支持通過RAM角色訪問對應AnalyticDB for PostgreSQL實例,且需對RAM角色配置相應權限策略。
場景示例
本文以“賬號A通過創建AnalyticDB for PostgreSQL數據源訪問賬號B的AnalyticDB for PostgreSQL實例”場景為例進行說明。
主賬號A:已開通DataWorks,需訪問主賬號B的AnalyticDB for PostgreSQL。
主賬號B:已開通AnalyticDB for PostgreSQL實例并創建相應數據庫。同時,已創建RAM角色并授權賬號A可通過該角色訪問賬號B的相關服務。
完成上述操作后,賬號A可參考本文創建AnalyticDB for PostgreSQL數據源,實現跨賬號訪問賬號B的AnalyticDB for PostgreSQL實例。
RAM角色要求及權限配置
賬號B的RAM角色要求及權限配置,具體如下:
賬號B需創建一個RAM角色并授權該角色可訪問指定AnalyticDB for PostgreSQL實例。同時,RAM角色需添加賬號A為信任的云賬號,即允許賬號A使用此RAM角色。詳情請參見創建RAM角色、創建自定義權限策略。
修改RAM角色的權限策略,授權給賬號A,后續賬號A可使用該角色訪問AnalyticDB for PostgreSQL。詳情請參見修改RAM角色的信任策略。策略內容如下。
{ "Version": "1", "Statement": [ { "Action": [ "sts:AssumeRole", "gpdb:DescribeDBInstanceAttribute", "gpdb:DescribeDBInstances", "gpdb:DescribeResourceUsage", "gpdb:DescribeDBInstanceIPArrayList", "gpdb:DescribeDBClusterIPArrayList", "gpdb:DescribeDBInstancePerformance", "gpdb:DescribeDBInstanceNetInfo", "gpdb:DescribeRegions", "gpdb:ModifySecurityIps" ], "Effect": "Allow", "Principal": { "Service": [ "賬號A的阿里云賬號ID@engine.dataworks.aliyuncs.com" ] } } ] }
數據源創建入口
進入數據源頁面。
登錄DataWorks控制臺,切換至目標地域后,單擊左側導航欄的 ,在下拉框中選擇對應工作空間后單擊進入管理中心。
進入工作空間管理中心頁面后,單擊左側導航欄的
,進入數據源頁面。
單擊新增數據源,選擇AnalyticDB for PostgreSQL,根據界面指引創建數據源。
您也可進入數據集成界面創建,但該頁面僅支持創建生產數據源,且創建完成后需在
進行管理。數據集成頁面支持創建的數據源類型,具體請以實際界面為準。
創建數據源
DataWorks支持通過如下兩種方式創建數據源。
標準模式工作空間,需分別創建開發環境數據源和生產環境數據源。工作空間模式介紹,詳情請參見必讀:簡單模式和標準模式的區別。
方式一:通過阿里云實例模式創建數據源
配置基礎信息。
參數
說明
數據源名稱
定義數據源在DataWorks的名稱,名稱必須唯一。
配置模式
選擇阿里云實例模式。
所屬云賬號
定義創建數據源所使用的AnalyticDB for PostgreSQL實例屬于當前阿里云主賬號還是其他阿里云主賬號。
當前阿里云主賬號:添加當前阿里云主賬號下的AnalyticDB for PostgreSQL實例作為當前工作空間的數據源。
其他阿里云主賬號:添加其他阿里云主賬號下的AnalyticDB for PostgreSQL實例作為當前工作空間的數據源。
說明此方式即可實現跨賬號創建數據源,數據源創建完成后僅支持通過RAM角色訪問;且不支持在數據開發(DataStudio)綁定,即此類數據源不能用于數據開發或周期性調度任務,僅可用于數據集成模塊進行數據同步。
請根據選擇的賬號類型,參照下文進行AnalyticDB for PostgreSQL實例及訪問身份配置。
地域
AnalyticDB for PostgreSQL實例所在地域。
說明若選擇的地域與當前工作空間地域不一致,則創建數據源后,該數據源不支持在數據開發(DataStudio)綁定,即此類數據源不能用于數據開發或周期性調度任務,僅可用于數據集成模塊進行數據同步。
AnalyticDB for PostgreSQL實例及訪問身份配置
所屬云賬號不同時,AnalyticDB for PostgreSQL實例及訪問身份的配置參數不同。
所屬云賬號:當前阿里云主賬號
實例:選擇需將指定地域下哪一個AnalyticDB for PostgreSQL實例創建為當前工作空間的數據源。
數據庫名稱、用戶名、密碼:選擇訪問目標實例的哪個數據庫,并輸入訪問該數據庫的密鑰信息。您可登錄云原生數據倉庫AnalyticDB for PostgreSQL控制臺,查看數據庫信息。
所屬云賬號:其他阿里云主賬號
對方阿里云主賬號UID、對方實例ID、對方RAM角色:填寫跨賬號的阿里云賬號UID、實例ID和RAM用戶角色。該實例將被創建為數據源,且后續使用此阿里云賬號下的RAM角色訪問該實例。
說明跨賬號創建數據源,需擁有的RAM角色權限請參見操作前準備:權限說明與配置。
對方數據庫名稱、用戶名、密碼:選擇訪問目標實例的哪個數據庫,并輸入訪問該數據庫的密鑰信息。您可登錄云原生數據倉庫AnalyticDB for PostgreSQL控制臺,查看數據庫信息。
說明此方式即可實現跨賬號創建數據源,數據源創建完成后僅支持通過RAM角色訪問;且不支持在數據開發(DataStudio)綁定,即此類數據源不能用于數據開發或周期性調度任務,僅可用于數據集成模塊進行數據同步。
測試資源組連通性。
根據使用場景不同,資源組分為數據集成(用于數據同步)、數據開發(用于任務調度)、數據服務(用于數據服務任務)三種類型。資源組的詳細介紹,請參見DataWorks資源組概述。
您需根據數據源后續的用途,在連接配置區域對應資源組類型后,測試所需資源組的連通性。若資源組與數據源無法連通,則相應數據源任務將無法正常執行。
方式二:通過連接串模式創建數據源
該方式僅支持使用當前阿里云賬號創建數據源。
配置基礎信息。
參數
說明
數據源名稱
定義數據源在DataWorks的名稱,名稱必須唯一。
配置模式
選擇連接串模式。
JDBC URL
連接AnalyticDB for PostgreSQL實例的JDBC URL信息。您可登錄云原生數據倉庫AnalyticDB for PostgreSQL控制臺,獲取相關數據庫及端口信息。
用戶名
訪問數據庫的用戶名。
密碼
訪問數據庫的密碼。
測試資源組連通性。
根據使用場景不同,資源組分為數據集成(用于數據同步)、數據開發(用于任務調度)、數據服務(用于數據服務任務)三種類型。資源組的詳細介紹,請參見DataWorks資源組概述。
您需根據數據源后續的用途,在連接配置區域對應資源組類型后,測試所需資源組的連通性。若資源組與數據源無法連通,則相應數據源任務將無法正常執行。
后續操作
數據源創建完成后,您可根據需要執行如下操作:
DataWorks的數據開發與運維中心模塊,為您提供AnalyticDB for PostgreSQL任務的開發與調度能力,若您需要基于該AnalyticDB for PostgreSQL數據源進行AnalyticDB for PostgreSQL任務開發,或周期性調度AnalyticDB for PostgreSQL相關任務,需先進入數據開發(DataStudio)頁面,將創建的數據源綁定至數據開發(DataStudio)。
說明僅當AnalyticDB for PostgreSQL實例和DataWorks工作空間同地域、同賬號時,基于該項目創建的數據源才可綁定至數據開發(DataStudio)。
DataWorks的數據集成模塊為您提供讀取和寫入數據至AnalyticDB for PostgreSQL的能力,您可將其他數據源的數據同步至當前AnalyticDB for PostgreSQL數據源,或將當前AnalyticDB for PostgreSQL數據源的數據同步至其他數據源。同時,可根據需要選擇離線同步、同步解決方案等場景執行相關數據同步操作。
增刪改查數據源:進入數據源管理頁面執行編輯、刪除等管理操作。