Serverless StarRocks对接DLF Paimon Catalog

本文为您详细介绍如何将Serverless StarRocksDLF Paimon Catalog进行对接,帮助您直接在Serverless StarRocks中访问DLF Paimon Catalog中存储的大规模数据,从而实现高效、便捷的数据湖分析。

前提条件

已创建Serverless StarRocks 3.3.8及以上版本的实例。如未创建,请参见创建实例。如已创建低版本的实例,请参见版本升级

创建DLF Paimon Catalog

详情请参见DLF 快速入门

创建StarRocks账号与授权

DLF 2.5的访问控制是RAM级别的。默认情况下,所有StarRocks用户均不具备DLF2.5的任何权限,因此您必须创建一个和RAM用户同名的内部用户,并为其授予相应的权限。

  1. 创建RAM用户。

    1. 使用阿里云账号或RAM管理员登录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实例

      指定用户名为adminStarRocks超级管理员,连接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;

StarRocks中连接Paimon Catalog

说明

这里仅用于建立与DLF Catalog的映射连接,创建或删除Catalog仅影响映射关系,不会对DLF中的实际数据产生影响。

使用该RAM用户登录StarRocks Manager,创建或查看Paimon Catalog,即可访问到DLF 2.5外表。

  1. SQL Editor查询列表页面,单击image图标,创建SQL查询。

  2. 输入以下SQL,单击运行,创建External Catalog。

    CREATE EXTERNAL CATALOG `paimon_catalog`
    PROPERTIES (
    'type' = 'paimon',
    'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com',
    'paimon.catalog.type' = 'rest',
    'paimon.catalog.warehouse' = 'xxx_test',
    'token.provider' = 'dlf'
    );

    参数说明如下。

    参数

    说明

    示例

    type

    必填,StarRocksCatalog类型,DLF 2.5当前只支持paimon

    paimon

    uri

    必填,格式为http://[region-id]-vpc.dlf.aliyuncs.com

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

    paimon.catalog.type

    必填,PaimonCatalog类型,DLF 2.5场景填写固定值rest

    rest

    paimon.catalog.warehouse

    必填,PaimonCatalog名称,可从DLF控制台上获取。

    xxx_test

    token.provider

    必填,Rest服务提供者,DLF 2.5固定填dlf

    dlf