大数据智能体工作台 DataBuddy 统一元数据管理架构

DataBuddy 的数据目录(Catalog)采用统一元数据管理架构,将数据湖中所有可被消费的资产实体——表、视图、卷(Volume)、模型,以及来自外部数据源的元数据——集中注册到同一个目录服务中。数据工程师可以通过单一入口发现所有数据资产,并查看它们之间的上下游血缘关系。

相关产品
大数据智能体工作台 DataBuddy 产品页,含版本规格、价格与购买入口。

一、概述

这篇说说数据目录的整体架构、关键组件,以及它与传统数据源管理方式的差异。

二、架构总览

数据目录由三层组成:

层级 角色 说明
MetaLake(元数据湖) 元数据存储 地域级元数据服务实例,每个租户在每个地域默认拥有一份 MetaLake,所有 Catalog 都注册在 MetaLake 之下
Catalog 命名空间顶层 MetaLake 下可创建多个 Catalog,每个 Catalog 拥有独立的存储路径与类型,跨工作空间可见
Schema / 资产 命名空间次层与对象 Catalog 下按 Schema 组织数据库;Schema 下挂载表、视图、卷、模型等资产对象

存储路径默认遵循下述规则,存放在腾讯云 COS:

cos://<bucket>/root/workspaces/<catalogN>/…

三、关键组件

·MetaLake(元数据湖) :地域级、租户级的元数据中枢。它维护所有 Catalog 的注册信息、Schema 与资产的元数据、权限策略、血缘关系。同一租户在每个地域只有一份 MetaLake。

·Catalog :可创建的元数据命名空间。Catalog 拥有:

·类型 :决定 Catalog 下能创建哪些资产,目前支持 Table(含视图)、Volume、Model 三种。

·存储路径 :Catalog 拥有的 COS 存储路径前缀,与计算资源解耦。

·链接信息 :Catalog 可与外部数据源连接(如基于 Connection 创建 Foreign Catalog)。

·Schema :Catalog 下的命名空间,相当于传统数据库中的 Database。每个 Catalog 创建后会自动包含 information_schema 与 default 两个 Schema。

·资产对象 :Schema 下挂载的具体资源,包括表(Table)、视图(View)、卷(Volume)、模型(Model)、函数(Function)等。每个资产由 Catalog 类型决定可承载的对象种类。

四、内置 Catalog

DataBuddy 在用户首次进入数据目录时,自动创建1个内置 Catalog:

内置 Catalog 用途 是否可改名 / 删除
default 默认目录,供首次使用时存放测试与样例数据 不可改名、不可删除

五、设计原则

DataBuddy 数据目录在设计上遵循以下基本原则:

1. 一个 MetaLake 多 Catalog :同一个 MetaLake 实例下可以创建多个 Catalog,Catalog 跨工作空间可见。

2. 每个地域一份 MetaLake :每个租户在每个地域默认只有一份 MetaLake,作为元数据的唯一事实来源;MetaLake 跨地域之间完全隔离,同名 Catalog 在不同地域会被视为不同对象。

3. 按存储划分 Catalog :MetaLake 按 COS 存储路径进行 Catalog 划分,每个 Catalog 拥有独立的存储前缀。

4. 每个 Catalog 有明确类型 :Catalog 在创建时必须指定类型,决定其下可承载的资产种类(Table、Volume、Model)。

5. Catalog 自带链接信息 :Catalog 可承载链接信息用于连接到外部资源(如 Connection、External Location)。

6. Catalog 与计算资源解耦 :Catalog 仅描述元数据与存储,与计算资源无关。同一个 Catalog 可以被任意有权限的计算资源访问。

7. 统一存储路径规则 :存储路径形如 cos://<bucket>/root/workspaces/<catalogN>/…,由系统自动维护。

六、与计算引擎的关系

Catalog 仅描述元数据与存储,不绑定具体的计算资源 。当你在 Studio 中执行 SQL、运行 Notebook,或在 Workflow 任务中读写数据时,由计算资源(DLC SQL、Spark、Ray 等)通过统一的元数据接口直接访问 Catalog:

·元数据操作(建表、改表、删表等)通过统一接口下发,所有引擎看到的元数据一致。

·数据读写遵循 Catalog 上的权限策略;越权访问会被引擎层拦截。

·同一个 Catalog 可以被多个计算资源、多个工作空间同时访问(受权限和工作空间策略控制)。

七、工作空间与 Catalog 的关系

·Catalog 注册在 MetaLake 上,跨工作空间可见 :在工作空间 A 中创建的 Catalog,在同一地域的其他工作空间中也能看到。

·工作空间通过 权限策略 决定哪些用户在当前空间下可以访问哪些 Catalog 与资产。

·跨工作空间的隔离主要由工作空间、用户、资源对象三元组的访问控制实现;同一 Catalog 在不同工作空间的可访问范围可独立配置。

八、使用限制

限制项 说明
存储后端 当前仅支持腾讯云 COS 作为底层存储
自定义 COS 桶 Catalog 创建时使用平台默认存储空间,暂不支持用户自定义 COS Bucket(系统会按 default 存储空间分配)
MetaLake 数量 每个租户在每个地域固定一份 MetaLake,不支持创建多份
Catalog 数量上限 每个 MetaLake 下 Catalog 数量上限为 100,你可以申请扩容
资产类型范围 当前支持表、视图、卷、模型;函数、API、应用类型计划在后续版本支持

九、常见问题

Q:为什么 Catalog 的列表跨工作空间可见,而表的访问还是受工作空间限制?

A:Catalog 在 MetaLake 上是全局可见的命名空间,便于跨空间共享元数据;但表的实际读写受 Catalog / Schema / 资产层的权限策略与工作空间策略双重控制。元数据可见 ≠ 数据可读。

Q:Catalog 与 数据源 是不是同一个概念?

A:不是。在 DataBuddy 中:

·Catalog :用于承载元数据与底层存储的目录,存储 DataBuddy 内部托管的数据(表、卷、模型)。

·数据源(Connection) :用于连接外部数据库(如 MySQL、PostgreSQL)以便接入或镜像数据。基于 Connection 创建的外部 Catalog 称为 Foreign Catalog,详见 外部数据管理。

Q:内置的 system Catalog 里能看到什么?

A:system Catalog 用于存放平台侧自动维护的系统级元数据,由平台统一管理;普通用户默认对其只有只读访问权限。

十、相关文档

·数据目录概述

·三级命名空间

·结构化数据 Catalog

·外部数据管理

·成员与权限管理

赞 (0)
上一篇 5天前
下一篇 5天前