专属目录

更新时间:
复制 MD 格式

专属目录是数据目录中用于直连外部元数据服务的目录类型,基于 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 用户,或已被授予租户管理员、数据目录管理员、元数据采集管理员等租户级角色。角色授权详情,请参见全局级模块权限控制。

操作步骤

步骤一:开通元数据服务

  1. 登录DataWorks控制台,切换至目标地域。

  2. 在左侧导航栏,单击资源组,进入资源组列表页面。

  3. 单击创建资源组,创建 Serverless 资源组。创建过程中,开通元数据服务用途,并为元数据服务分配 CU 额度。仅包年包月类型的 Serverless 资源组支持开通元数据服务,且元数据服务分配的 CU 额度需大于等于 3。资源组创建的详细步骤,请参见使用Serverless资源组。

  4. 资源组创建完成后,系统将自动在资源组内启动 Gravitino 服务并初始化元数据库,整个过程约5~10分钟。服务启动完成后,即可在数据目录的专属目录页签中使用元数据服务。

说明

元数据服务将占用资源组的 CU 资源,请合理规划 CU 额度。

步骤二:创建并进入 Metalake

Metalake 是专属目录中的顶层管理单元,一个资源组内可以创建多个 Metalake,每个 Metalake 下独立管理一组 Catalog。您可以按云环境、租户或业务线划分 Metalake,例如为生产租户与测试租户、为不同云上的数据湖分别创建独立 Metalake,实现元数据的隔离管理与权限边界划分。进入 Metalake 管理页面前,需要先创建或选择一个 Metalake。

  1. 登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据治理 > 数据地图,在右侧页面中单击进入数据地图。

  2. 在数据地图左侧导航栏,单击数据目录图标,并在页面上方单击专属目录页签。

  3. 若页面提示当前地域尚无可用于元数据服务的资源组,说明尚未开通元数据服务。请单击前往配置,按步骤一为包年包月 Serverless 资源组开通元数据服务并分配 CU 额度,配置完成后返回专属目录页签继续后续操作。

  4. 单击已开通元数据服务的资源组对应的元数据服务卡片,进入 Metalake 管理页面。首次进入时,系统会引导您创建一个 Metalake。

  5. 输入 Metalake 名称后单击确认,系统将创建 Metalake 并自动进入 Metalake 管理页面。该页面提供数据目录、合规管理等管理入口。

步骤三:管理数据目录

Catalog 是专属目录中纳管具体数据源的逻辑单元,每个 Catalog 对应一种数据源类型(如 Paimon、Iceberg、Hive、StarRocks、JDBC 等)。在 Metalake 管理页面的数据目录页签下,您可以新建、编辑、删除 Catalog,并为 Catalog 关联标签和策略。

新建 Catalog

  1. 在 Metalake 管理页面,确认当前处于数据目录页签,单击+ 新建 Catalog。

  2. 在弹出的对话框中,选择服务提供方。当前元数据服务支持以下服务提供方:

    服务提供方

    说明

    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 数据。

  3. 根据所选服务提供方,填写 Catalog 名称、连接信息(如存储路径、JDBC URL、认证凭据等)及其他配置参数。

  4. 单击确认完成 Catalog 创建。创建成功后,Catalog 将出现在数据目录列表中。

管理已有 Catalog

在数据目录页签中,您可以查看当前 Metalake 下所有 Catalog 的名称、服务提供方、备注、标签和策略信息,并对每个 Catalog 执行以下操作。执行编辑、删除等变更操作需要具备相应权限,详情请参见本文的前提条件。

  • 编辑:修改 Catalog 的连接信息和配置参数。

  • 删除:移除不再使用的 Catalog。删除 Catalog 不会删除底层数据源中的实际数据。

  • 关联标签:为 Catalog 添加标签,便于分类和检索。

  • 关联策略:为 Catalog 绑定访问控制策略,实现细粒度权限管理。

  • 浏览数据库和表:在左侧数据源树中展开 Catalog,可查看其下的数据库和表结构详情,并编辑元数据属性。

进阶操作

接入计算引擎读写数据

如果您需要通过 Spark、EMR 等外部计算引擎读写专属目录管理的 Catalog 数据,需要先确保引擎能够访问 Gravitino 服务地址,再在引擎中配置 Catalog 连接。

获取服务地址

开通元数据服务后,系统会为资源组自动生成以下服务地址。实际地址可在数据目录页面的专属目录页签中,单击元数据服务卡片查看。

服务地址

说明

元数据服务 Endpoint

Gravitino 元数据服务的 REST API 地址(端口 8090),供计算引擎或第三方工具通过 Gravitino API 访问与管理元数据。示例:http://gv-{ID}.{region}.dataworks-metalake.aliyuncs.com:8090

Iceberg Endpoint

Iceberg REST Catalog 服务地址(端口 9001),供计算引擎以 Iceberg REST Catalog 方式读写 Iceberg 表。示例:http://gv-{ID}.{region}.dataworks-metalake.aliyuncs.com:9001

服务地址的域名格式为gv-{ID}.地域.dataworks-metalake.aliyuncs.com,实际地址请以控制台展示为准。

配置引擎连接

  1. 将计算引擎部署在与资源组相同的 VPC 内,或通过相关网络产品打通引擎与资源组之间的网络。

  2. 在引擎中配置 Gravitino Catalog 或 Iceberg REST Catalog,服务地址使用上方获取的地址,即可读取与写入 Catalog 下的数据库和表。

说明

使用 DataWorks Serverless 计算引擎(如 Serverless Spark)访问时,请确保引擎所在工作空间绑定的 VPC 与资源组的 VPC 互通,否则无法访问 Gravitino 服务。

同步元数据至数据地图

如果需要在数据地图中统一检索和治理 Gravitino 纳管的元数据,可通过元数据采集将 Catalog、数据库及表元数据同步至数据地图。仅在专属目录中管理元数据的用户可跳过此步骤。

  1. 创建 Apache Gravitino 数据源,Endpoint 配置为上方获取的元数据服务 Endpoint。操作详情,请参见Apache Gravitino数据源。

  2. 新建并运行元数据采集器,将 Gravitino 纳管的 Meta Lake、Catalog、数据库及表元数据同步至数据地图。操作详情,请参见Apache Gravitino元数据采集。

  3. 同步完成后,可在数据地图中检索 Gravitino 纳管的元数据,并查看数据库与表的详情。

说明

同步至默认目录的元数据为非实时同步,如需查看实时元数据,请前往专属目录的元数据服务页面查看。