全部產品
Search
文件中心

Data Lake Formation:Serverless StarRocks以Iceberg REST訪問DLF

更新時間:Apr 28, 2026

本文為您介紹如何將Serverless StarRocks以Iceberg REST對接DLF Catalog。

前提條件

建立StarRocks帳號與授權

DLF的存取控制是RAM層級的。預設情況下,所有StarRocks使用者均不具備DLF的任何許可權,因此您必須建立一個和RAM使用者同名的內部使用者,並為其授予相應的許可權。

  1. 建立RAM使用者。

    1. 使用阿里雲帳號或Resource Access Management員登入RAM控制台

    2. 建立一個新的RAM使用者或選擇一個已有RAM使用者。建立RAM使用者,請參見快速入門:建立RAM使用者並授權

      說明

      該RAM使用者的名稱需符合StarRocks的使用者命名規則,即只包含字母、數字、底線,不能包含虛線、句號。

  2. 在DLF中為該RAM使用者授權。

    1. 登入資料湖構建控制台

    2. 建立或選擇一個Catalog,請參見資料目錄

    3. 切換到許可權頁簽,單擊授權,根據需求授予上一步所選使用者訪問Catalog的相關許可權。詳情請參見資料授權管理。例如:RAM使用者的使用者名稱為emr,授予該使用者當前Catalog的全部許可權。

      image

  3. 在Serverless StarRocks中建立一個與該RAM同名的使用者。賦予該使用者建立External Catalog以及查看所有Catalog的許可權,並將該使用者與RAM使用者關聯。

    1. 登入EMR Serverless StarRocks控制台

    2. 執行個體列表頁面,單擊已建立執行個體操作列的串連執行個體,詳情請參見通過EMR StarRocks Manager串連StarRocks執行個體

      指定使用者名稱為admin或StarRocks超級管理員,串連StarRocks執行個體。

    3. 在EMR StarRocks Manager頁面的左側功能表列,選擇資訊安全中心 > 使用者管理,單擊添加使用者

    4. 在彈出的對話方塊中,配置以下資訊,單擊確定

      • 使用者來源:選擇RAM使用者

      • 使用者名稱:選擇上一步授權的RAM使用者。

      • 密碼:自訂。

      • 角色:預設public。

    5. 添加使用者成功後,為該使用者授權。

      1. 使用者管理頁面,單擊目標使用者操作列的授權

      2. 許可權管理頁簽,單擊添加許可權

      3. 添加許可權面板中,配置以下參數,單擊確定

        • 資源:選擇相應資源。

        • 許可權配置:勾選需要授權的許可權。

        說明

        此處StarRocks Manager中授權資料庫與授權許可權的內容只包含StarRocks內表。要想修改DLF資料目錄的存取權限,只能在資料湖構建控制台修改對應同名RAM使用者的許可權。

  4. (可選)驗證使用者是否關聯成功。

    因上一步操作有10~20秒的延遲,您可使用該使用者登入StarRocks Manager,在SQL Editor查詢列表頁面,單擊image表徵圖,建立SQL查詢。通過SQL Editor執行以下命令,查看目前使用者關聯的Ram User ID,不為空白時說明關聯成功。

    show property;

建立Catalog

說明

通過Iceberg REST 在DLF Catalog建立的表均為Iceberg表

使用該RAM使用者登入StarRocks Manager,建立或查看DLF Catalog,即可訪問到DLF外表。

  1. SQL Editor查詢列表頁面,單擊image表徵圖,建立SQL查詢。

  2. 輸入以下SQL,單擊運行,建立External Catalog。

    CREATE EXTERNAL CATALOG iceberg_catalog
    PROPERTIES
    ( 
        "type" = "iceberg",
        "uri" = "http://cn-hangzhou-vpc.dlf.aliyuncs.com/iceberg",
        "iceberg.catalog.type" = "dlf_rest",
        "warehouse" = "iceberg_test",
        "rest.signing-region" = "cn-hangzhou"
    );

    參數說明如下。

    參數

    說明

    樣本

    type

    StarRocks的Catalog類型,固定值 iceberg

    iceberg

    uri

    訪問DLF Rest Catalog的URI,詳見Iceberg REST

    http://cn-hangzhou-vpc.dlf.aliyuncs.com/iceberg

    iceberg.catalog.type

    DLF情境填寫固定值dlf_rest

    dlf_rest

    warehouse

    DLF Catalog名稱。

    iceberg_test

    rest.signing-region

    DLF服務的Region ID,詳見服務存取點

    cn-hangzhou

  3. 運行以下SQL,可查詢Iceberg Catalog下的庫表資訊。

    SELECT * FROM catalog_name.database_name.table_name;