专属目录是数据目录中用于直连外部元数据服务的目录类型,基于 DataWorks 提供的全托管 Apache Gravitino 服务(元数据服务)构建。您无需自建和运维 Gravitino 集群,即可直接访问跨地域、跨云、跨租户或数据湖等外部元数据服务中的元数据,纳管 Paimon、Iceberg、Hive、JDBC 等多种湖格式与数据源的表,并供 Spark 等计算引擎实时读写。元数据还可同步至数据地图,实现统一检索与治理。本文介绍如何开通并使用专属目录。
功能介绍
数据目录的 专属目录 基于 DataWorks 提供的全托管 Gravitino(元数据服务)构建:创建 Serverless 资源组时开通元数据服务并分配 CU 额度后,DataWorks 将自动在资源组内部署并运维 Gravitino 服务,您无需自行搭建和维护 Gravitino 集群。Spark 等计算引擎可通过服务地址直连元数据服务,实时访问元数据,元数据按 Metalake 与 Catalog 层级组织。
数据目录还提供面向汇聚与治理的默认目录:通过元数据采集将各数据源的元数据汇聚至数据地图,实现统一的元数据检索与治理,元数据随采集任务周期性更新。两类目录定位不同、互不替代,可配合使用:如需在数据地图中统一检索与治理专属目录纳管的元数据,可通过元数据采集将其同步至默认目录,详情请参见本文的「同步元数据至数据地图」章节。
专属目录提供以下核心能力:
-
Metalake 与 Catalog 统一管理:在数据目录专属目录页签下的元数据服务中创建和管理 Metalake,在 Metalake 下新建和管理 Catalog(如 Paimon、Iceberg、Hive、StarRocks、JDBC 等多种服务提供方),支持编辑、删除、关联标签与策略等操作。
-
引擎读写接入:服务自动生成元数据服务 Endpoint 与 Iceberg Endpoint,Spark 等计算引擎与资源组网络互通后,即可通过服务地址读写 Catalog 下的数据。
-
元数据同步治理:通过元数据采集将 Gravitino 纳管的元数据同步至数据地图,实现统一的元数据检索与治理。
如果您已自建 Gravitino 服务,可直接将其接入 DataWorks 进行元数据采集,详情请参见Apache Gravitino数据源。
前提条件
-
已创建或计划创建Serverless资源组,并已规划资源组所使用的专有网络 VPC 及交换机。
-
如需通过计算引擎(如自建 Spark)访问 Gravitino 服务,请确保引擎所在网络与资源组的 VPC 互通。
-
已获取相应权限。对 Metalake 与 Catalog 执行新建、编辑、删除等变更操作,需要当前账号为阿里云主账号(租户 Owner)、具备
AliyunDataWorksFullAccess权限的 RAM 用户,或已被授予租户管理员、数据目录管理员、元数据采集管理员等租户级角色。角色授权详情,请参见全局级模块权限控制。
操作步骤
步骤一:开通元数据服务
-
登录DataWorks控制台,切换至目标地域。
-
在左侧导航栏,单击资源组,进入资源组列表页面。
-
单击创建资源组,创建 Serverless 资源组。创建过程中,开通元数据服务用途,并为元数据服务分配 CU 额度。仅包年包月类型的 Serverless 资源组支持开通元数据服务,且元数据服务分配的 CU 额度需大于等于 3。资源组创建的详细步骤,请参见使用Serverless资源组。
-
资源组创建完成后,系统将自动在资源组内启动 Gravitino 服务并初始化元数据库,整个过程约5~10分钟。服务启动完成后,即可在数据目录的专属目录页签中使用元数据服务。
元数据服务将占用资源组的 CU 资源,请合理规划 CU 额度。
步骤二:创建并进入 Metalake
Metalake 是专属目录中的顶层管理单元,一个资源组内可以创建多个 Metalake,每个 Metalake 下独立管理一组 Catalog。您可以按云环境、租户或业务线划分 Metalake,例如为生产租户与测试租户、为不同云上的数据湖分别创建独立 Metalake,实现元数据的隔离管理与权限边界划分。进入 Metalake 管理页面前,需要先创建或选择一个 Metalake。
-
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的,在右侧页面中单击进入数据地图。
-
在数据地图左侧导航栏,单击数据目录图标,并在页面上方单击专属目录页签。
-
若页面提示当前地域尚无可用于元数据服务的资源组,说明尚未开通元数据服务。请单击前往配置,按步骤一为包年包月 Serverless 资源组开通元数据服务并分配 CU 额度,配置完成后返回专属目录页签继续后续操作。
-
单击已开通元数据服务的资源组对应的元数据服务卡片,进入 Metalake 管理页面。首次进入时,系统会引导您创建一个 Metalake。
-
输入 Metalake 名称后单击确认,系统将创建 Metalake 并自动进入 Metalake 管理页面。该页面提供数据目录、合规管理等管理入口。
步骤三:管理数据目录
Catalog 是专属目录中纳管具体数据源的逻辑单元,每个 Catalog 对应一种数据源类型(如 Paimon、Iceberg、Hive、StarRocks、JDBC 等)。在 Metalake 管理页面的数据目录页签下,您可以新建、编辑、删除 Catalog,并为 Catalog 关联标签和策略。
新建 Catalog
-
在 Metalake 管理页面,确认当前处于数据目录页签,单击+ 新建 Catalog。
-
在弹出的对话框中,选择服务提供方。当前元数据服务支持以下服务提供方:
服务提供方
说明
lakehouse-paimon
纳管 Apache Paimon 表,适用于湖仓一体场景。
lakehouse-iceberg
纳管 Apache Iceberg 表,适用于开放表格式场景。
hive
纳管 Apache Hive 表。
jdbc-mysql / jdbc-postgresql / jdbc-starrocks 等
纳管关系型数据库中的表,通过 JDBC 连接访问数据源。
lakehouse-generic
通用湖格式 Catalog,通过参数指定实际的表格式。例如纳管外部 Delta Table 的元数据时,需设置
format=delta、external=true,并通过location指定数据所在路径。该方式仅支持元数据管理,不支持创建、修改或清理物理 Delta 数据。 -
根据所选服务提供方,填写 Catalog 名称、连接信息(如存储路径、JDBC URL、认证凭据等)及其他配置参数。
-
单击确认完成 Catalog 创建。创建成功后,Catalog 将出现在数据目录列表中。
管理已有 Catalog
在数据目录页签中,您可以查看当前 Metalake 下所有 Catalog 的名称、服务提供方、备注、标签和策略信息,并对每个 Catalog 执行以下操作。执行编辑、删除等变更操作需要具备相应权限,详情请参见本文的前提条件。
-
编辑:修改 Catalog 的连接信息和配置参数。
-
删除:移除不再使用的 Catalog。删除 Catalog 不会删除底层数据源中的实际数据。
-
关联标签:为 Catalog 添加标签,便于分类和检索。
-
关联策略:为 Catalog 绑定访问控制策略,实现细粒度权限管理。
-
浏览数据库和表:在左侧数据源树中展开 Catalog,可查看其下的数据库和表结构详情,并编辑元数据属性。
进阶操作
接入计算引擎读写数据
如果您需要通过 Spark、EMR 等外部计算引擎读写专属目录管理的 Catalog 数据,需要先确保引擎能够访问 Gravitino 服务地址,再在引擎中配置 Catalog 连接。
获取服务地址
开通元数据服务后,系统会为资源组自动生成以下服务地址。实际地址可在数据目录页面的专属目录页签中,单击元数据服务卡片查看。
|
服务地址 |
说明 |
|
元数据服务 Endpoint |
Gravitino 元数据服务的 REST API 地址(端口 8090),供计算引擎或第三方工具通过 Gravitino API 访问与管理元数据。示例: |
|
Iceberg Endpoint |
Iceberg REST Catalog 服务地址(端口 9001),供计算引擎以 Iceberg REST Catalog 方式读写 Iceberg 表。示例: |
服务地址的域名格式为gv-{ID}.地域.dataworks-metalake.aliyuncs.com,实际地址请以控制台展示为准。
配置引擎连接
-
将计算引擎部署在与资源组相同的 VPC 内,或通过相关网络产品打通引擎与资源组之间的网络。
-
在引擎中配置 Gravitino Catalog 或 Iceberg REST Catalog,服务地址使用上方获取的地址,即可读取与写入 Catalog 下的数据库和表。
使用 DataWorks Serverless 计算引擎(如 Serverless Spark)访问时,请确保引擎所在工作空间绑定的 VPC 与资源组的 VPC 互通,否则无法访问 Gravitino 服务。
同步元数据至数据地图
如果需要在数据地图中统一检索和治理 Gravitino 纳管的元数据,可通过元数据采集将 Catalog、数据库及表元数据同步至数据地图。仅在专属目录中管理元数据的用户可跳过此步骤。
-
创建 Apache Gravitino 数据源,Endpoint 配置为上方获取的元数据服务 Endpoint。操作详情,请参见Apache Gravitino数据源。
-
新建并运行元数据采集器,将 Gravitino 纳管的 Meta Lake、Catalog、数据库及表元数据同步至数据地图。操作详情,请参见Apache Gravitino元数据采集。
-
同步完成后,可在数据地图中检索 Gravitino 纳管的元数据,并查看数据库与表的详情。
同步至默认目录的元数据为非实时同步,如需查看实时元数据,请前往专属目录的元数据服务页面查看。