Knowledge Catalog(以前称为 Dataplex Universal Catalog)提供了一个统一的结构化元数据管理平台,可用于管理分布式数据资产。它会自动发现、编入索引和整理技术结构、业务情境、数据质量指标和运营关系。
通过将元数据整理到灵活且可扩展的元模型中, Knowledge Catalog 建立了结构基础 ,以便在 Google 的 Agentic Data Cloud 中构建 Active Context Graph。借助此情境图,数据团队可以发现和治理资产,同时让生成式 AI 智能体能够检索到有依据且可信的业务情境。
Knowledge Catalog 元模型
Knowledge Catalog 通过容器、资产、架构和关系的模块化层次结构来整理元数据:
- 容器和资产:条目组用于整理条目,这些条目代表 各个数据资产及其架构列。
- 结构化丰富:切面类型用于定义切面的架构,这些切面会将结构化元数据附加到条目、列或关系。
- 标准和治理:条目类型用于定义对条目强制执行 必需切面的模板。
- 关系:条目链接类型用于定义连接相关条目和业务术语的关系(条目链接) 。
下表总结了系统管理型资源 (由 Google Cloud自动提供)与用户定义的自定义资源之间的区别:
| 元模型元素 | 系统管理型(内置) | 用户定义型(自定义) |
|---|---|---|
| 条目组 | 针对 Google Cloud 服务(例如
@bigquery、@spanner、@pubsub)按项目预定义。 |
由用户创建,用于对自定义数据资产和 权限进行分组和管理。 |
| 条目 | 自动从 Google Cloud 来源(例如 BigQuery 表、视图、数据集和模型)填充。 | 由用户创建,用于表示定制的数据源、文件或 第三方数据库。 |
| 切面类型 | 预定义的系统模板(例如 Schema、
Overview、Contacts、DataQuality、
Lineage)。 |
由用户创建,用于定义特定于网域的元数据架构(例如 PII 分类或 SLA 层级)。 |
| 切面 | 自动从源系统、查询日志或自动 扫描填充。 | 由用户、流水线或智能体创建,并附加到条目、 列或条目链接。 |
| 条目类型 | 表示 Google Cloud 资源类型的预定义模板。 | 由用户定义,用于为自定义 数据资产指定必需切面和可选切面。 |
| 条目链接 | 内置的关系类型(例如 synonym、
definition、schema-join、
related)。 |
在特定条目或列之间创建的实例,用于对 跨系统连接进行建模。 |
以下部分介绍了构成 Knowledge Catalog 元模型的主要组件。
条目组
条目组 (EntryGroup) 是条目和条目链接的区域容器,可作为管理这些资源的管理和安全边界。
使用条目组可配置以下内容:
- 身份和访问权限管理访问权限控制:向特定 团队授予对条目组的查看或修改权限,而无需修改各个条目的权限。
- 位置和项目归因:按地理区域和 项目所有权对资产进行分组。
对于 Google Cloud 来源,Knowledge Catalog 会创建
系统条目组(例如 @bigquery 或
@spanner)。对于自定义数据源,您可以创建自定义条目组。
例如,财务团队可以创建一个名为 production_finance_data 的自定义条目组,以便在一个位置管理所有与财务相关的自定义条目的访问权限。
如需了解详情,请参阅条目组。
条目和架构路径
条目 (Entry) 表示单个数据资产。条目可以表示结构化数据库表、分析模型、非结构化对象表或自定义外部数据集。
条目的关键组件包括:
- 条目标识符:父条目组中的唯一资源名称。
- 条目类型:用于定义条目的结构和 必需切面的模板。
- 切面:附加到条目的结构化元数据属性。
- 架构路径(列):数据资产中的特定子部分或字段,例如 BigQuery 表中的列或 JSON 架构中的字段。
通过列,您可以将元数据附加到资产中的各个字段。您无需手动定义列;当您将 schema 类型的切面附加到条目时,系统会自动填充列。您可以使用点表示法路径(例如 customer.address.postal_code)引用嵌套字段。
例如,名为 orders_project.sales.customer_orders 的 BigQuery 表表示为一个条目。如需将该表中的 email_address 字段描述为包含敏感信息,您可以将分类切面直接附加到 email_address 列路径。
如需了解详情,请参阅条目。
切面类型
切面类型 (AspectType) 是一个可重复使用的架构模板,用于定义切面的字段、数据类型和验证规则。每个切面都是某种切面类型的一个实例。
切面类型可以是系统定义型 (由 提供 Google Cloud)或 自定义型 (由您的组织创建)。
为自定义切面类型定义 metadata_template 时,您可以使用以下受支持的数据类型:
| 字段数据类型 | 说明 | 用例示例 |
|---|---|---|
string |
文本值 (UTF-8)。 | 所有者电子邮件、数据分类标签、部门名称。 |
integer / number |
数值(整数或浮点数)。 | 数据保留天数、SLA 目标百分比、优先级排名。 |
boolean |
true 或 false 标志。 | contains_pii: true、is_certified: false。 |
enum |
允许的字符串值的预定义列表。 | 环境:["DEV", "STAGING", "PROD"]。 |
datetime / timestamp |
ISO 8601 格式的日期和时间。 | 上次认证日期、合规性审核截止日期。 |
record |
包含子字段的嵌套结构化对象。 | ContactInfo { name: string, email: string, phone: string }。 |