天天看點

四步實作DLA跨雲賬号分析OSS資料

背景

在使用Data Lake Analytics(

https://et.aliyun.com/bdad/datalake

)進行OSS資料分析時,通常雲賬号A是通路自己的OSS bucket資料,如果有通路其他雲賬号(假設雲賬号B)的OSS資料的需求,本文正好幫到您,教您如何通過DLA實作DLA跨雲賬号分析OSS資料。下文都是假設“雲賬号A需要通過DLA通路雲賬号B的OSS資料”。

四步實作DLA跨雲賬号分析OSS資料

步驟一:建立用于跨賬号通路的RAM角色

使用雲賬号B登入通路控制(

https://ram.console.aliyun.com

),點選RAM角色管理。

四步實作DLA跨雲賬号分析OSS資料

然後,在右側頁面點選建立RAM角色。

**

四步實作DLA跨雲賬号分析OSS資料

在彈出的建立RAM角色頁面中,選擇阿裡雲服務,選擇受信服務物聯網(這裡隻是以物聯網受信服務為模闆,後面進行修改),在RAM角色名稱中輸入:for-dla-cross-account(名字可以自己定義)。

四步實作DLA跨雲賬号分析OSS資料

确定後,顯示RAM角色建立成功。

四步實作DLA跨雲賬号分析OSS資料

步驟二:修改RAM角色的信任政策

仍然在RAM中,在RAM角色管理頁面,輸入步驟一中建立好的RAM角色名稱for-dla-cross-account(如果您自己定義了名稱,輸入相應名稱),搜尋到對應角色。

四步實作DLA跨雲賬号分析OSS資料

點選for-dla-cross-account(或者您實際的角色名稱),進入後,選擇信任政策管理,點選修改信任政策。

四步實作DLA跨雲賬号分析OSS資料

在頁面中,将Service部分的iot.aliyuncs.com替換成<雲賬号A>@openanalytics.aliyuncs.com,例如[email protected],其中111111111為雲賬号A的雲賬号。

四步實作DLA跨雲賬号分析OSS資料

點選确認儲存。

在如下頁面右上角,複制ARN的URL:acs:ram::2222222222:role/for-dla-cross-account(以您實際顯示的URL為準,其中2222222222是雲賬号B的雲賬号),後面在DLA中建schema時要用到。

四步實作DLA跨雲賬号分析OSS資料

步驟三:為RAM角色添加OSS通路權限

點選權限管理,添權重限。

四步實作DLA跨雲賬号分析OSS資料

選擇AliyunOSSFullAccess,如果隻是查詢,也可以選擇AliyunOSSReadOnlyAccess。因為後續可能在DLA中執行INSERT OVERWRITE操作,建議這裡選擇AliyunOSSFullAccess。确定儲存。

四步實作DLA跨雲賬号分析OSS資料

顯示授權成功。

四步實作DLA跨雲賬号分析OSS資料

步驟四:DLA中建schema和table進行查詢

經過上述三步,雲賬号B中,跨賬号通路的RAM角色和權限已經準備好。雲賬号A可以通過DLA通路雲賬号B的OSS了。

  • 建立指向雲賬号B OSS bucket的schema,其中為雲賬号B的OSS bucket,cross_account_accessing_arn指向上述步驟二中的ARN URL。
CREATE DATABASE `schema_of_account_b`
WITH DBPROPERTIES (
    catalog = 'oss',
    location = 'oss://<account_b_bucket>/',
  cross_account_accessing_arn= 'acs:ram::2222222222:role/for-dla-cross-account'
)
COMMENT ''           
  • 在schema_of_account_b中指向雲賬号B的目标OSS bucket資料進行建表查詢,以下為示例。
CREATE EXTERNAL TABLE `schema_of_account_b`.`nation` (
    `n_nationkey` int,
    `n_name` string,
    `n_regionkey` int,
    `n_comment` string
)
ROW FORMAT DELIMITED
    FIELDS TERMINATED BY '|'
STORED AS `TEXTFILE`
LOCATION 'oss://<account_b_bucket>/...'           

小結:

本文通過4步驟實作了DLA對跨雲賬号的OSS資料通路。

  • 建立跨賬号通路的RAM角色
  • 修改RAM角色的信任政策
  • 為RAM角色添加OSS通路角色
  • DLA中建schema和table查詢

Data Lake Analytics首購和流量包優惠

首購使用者1元10TB,流量包階梯折扣優惠:

産品詳情:

https://www.aliyun.com/product/datalakeanalytics

雲栖社群:

https://yq.aliyun.com/teams/396

知乎社群:

https://zhuanlan.zhihu.com/data-lake-analytics

繼續閱讀