Data Catalog 已弃用。如果您要将程序化工作流、脚本、客户端库或 Terraform 配置从 Data Catalog 迁移到 Knowledge Catalog,则必须更新代码以使用 Dataplex API。
本文档全面介绍了 Data Catalog 资源、功能和 API 方法与 Dataplex API 中相应项的映射。
如需了解分步迁移过程,请参阅 从 Data Catalog 转换到 Knowledge Catalog。 如需了解 API 参考文档,请参阅 Dataplex API REST 文档和 Dataplex API RPC 文档。
资源映射
下表介绍了 Data Catalog 中的资源与 Knowledge Catalog 中的资源之间的对应关系:
| Data Catalog 资源 | Knowledge Catalog 资源 | 说明 |
|---|---|---|
| 公开代码模板 | 切面类型 (global) |
标记模板是 Data Catalog 中的区域级资源,
可在不同区域中使用。它们对应于 Knowledge Catalog 中的 global 切面
类型。 |
| 公开标记 | 可选切面 | 公开标记对应于 Knowledge Catalog 中附加到条目或 列的可选切面。 |
| 条目组 | 条目组 | 条目组在这两种服务中都充当组织和安全容器。对于 Google Cloud 来源,系统条目组(例如
@bigquery)是按项目自动建立的。 |
| 自定义条目 | 自定义条目(包含必需切面) | 标准自定义条目属性被建模为由自定义条目's EntryType 定义的必需切面
。 |
| 系统 (Google Cloud) 条目 | 系统条目(包含必需切面) | 描述内置实体(例如 Schema 的
BigQuery 表)的元数据会捕获在
系统定义的切面类型的必需切面中。 |
| 业务术语库 | 业务术语库 | 业务术语分类,用于在整个企业内标准化业务上下文。 |
特性比较
下表比较了 Knowledge Catalog 和 Data Catalog 的元数据管理功能:
| 功能 | Knowledge Catalog | Data Catalog |
|---|---|---|
| 支持的 Google Cloud 来源 | 支持的来源中所述的所有来源 Supported Google Cloud sources。 | Data Catalog 文档中所述的所有来源。 |
| 自定义来源注入 | 以受控结构(由 条目类型定义)注入到自定义条目中。 Data Catalog 自定义条目和条目组在 Knowledge Catalog 中以
|
注入到通用自定义条目中。 |
| 元数据扩充 | 通过业务术语库、切面和切面类型捕获。 支持条目链接。您可以将切面直接附加到条目 链接。 |
通过业务术语库、标记和标记模板捕获。 不支持条目链接。 |
| 条目链接 | 支持。借助 synonym、
definition、related 和
schema-join 等内置类型,您可以连接条目和列。 |
不可用。 |
| 元数据更改 Feed | 以近乎实时的方式将元数据更改通知流式传输到 Pub/Sub。 | 不可用。 |
| 搜索 | 搜索是在同一组织和 VPC Service Controls 边界内的所有支持的 Google Cloud 来源、自定义 条目、切面和迁移的 Data Catalog 内容中执行的。 | 搜索是在 Data Catalog 中创建的支持的来源、自定义条目和标记 中执行的。 |
| 数据沿袭 | 使用 Dataplex API 检索资产节点的条目详细信息。 在 Google Cloud 控制台中显示附加的切面。 | 使用 Data Catalog API 检索条目详细信息。 |
| 业务术语库 | 可让您构建业务术语分类,并将这些术语与 数据资产(条目)和列相关联。 | 可让您将术语与列相关联。 |
将 Data Catalog API 方法映射到 Knowledge Catalog
下表提供了 Data Catalog API (google.cloud.datacatalog.v1) 和 Dataplex API (google.cloud.dataplex.v1.CatalogService) 之间的方法到方法的映射。
条目组
条目组的概念在这两种服务中是一致的:
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.entryGroups.create (REST)CreateEntryGroup (RPC) |
projects.locations.entryGroups.create (REST)CreateEntryGroup (RPC) |
projects.locations.entryGroups.get (REST)GetEntryGroup (RPC) |
projects.locations.entryGroups.get (REST)GetEntryGroup (RPC) |
projects.locations.entryGroups.patch (REST)UpdateEntryGroup (RPC) |
projects.locations.entryGroups.patch (REST)UpdateEntryGroup (RPC) |
projects.locations.entryGroups.delete (REST)DeleteEntryGroup (RPC) |
projects.locations.entryGroups.delete (REST)DeleteEntryGroup (RPC) |
projects.locations.entryGroups.list (REST)ListEntryGroups (RPC) |
projects.locations.entryGroups.list (REST)ListEntryGroups (RPC) |
条目
条目(表示数据资产)的概念在这两种服务中是一致的:
标记模板和切面类型
切面类型是 Data Catalog 标记模板的后继者:
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.create (REST)CreateTagTemplate (RPC) |
projects.locations.aspectTypes.create (REST)CreateAspectType (RPC) |
projects.locations.tagTemplates.get (REST)GetTagTemplate (RPC) |
projects.locations.aspectTypes.get (REST)GetAspectType (RPC) |
projects.locations.tagTemplates.patch (REST)UpdateTagTemplate (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.delete (REST)DeleteTagTemplate (RPC) |
projects.locations.aspectTypes.delete (REST)DeleteAspectType (RPC) |
catalog.search (REST) with type=tag_templateSearchCatalog (RPC) with type=tag_template |
projects.locations.aspectTypes.list (REST)ListAspectTypes (RPC) |
代码模板字段
代码模板字段对应于切面类型中 metadata_template 字段的内容。使用 UpdateAspectType 和修改后的 metadata_template 来创建、更新、重命名或删除字段:
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.fields.create (REST)CreateTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.patch (REST)UpdateTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.rename (REST)RenameTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.delete (REST)DeleteTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
代码模板字段枚举值
通过更新相应切面类型中的 metadata_template 字段来修改枚举值:
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.fields.enumValues.rename (REST)RenameTagTemplateFieldEnumValue (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
标记和切面
切面是 Data Catalog 标记的后继者。切面直接封装在其父条目或条目链接中,并使用带有 update_mask 的 UpdateEntry 方法进行管理:
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.entryGroups.entries.tags.create (REST)CreateTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
projects.locations.entryGroups.entries.tags.list (REST)ListTags (RPC) |
projects.locations.entryGroups.entries.get (REST)GetEntry (RPC)
注意 :如需过滤响应中的切面,请使用 |
projects.locations.entryGroups.entries.tags.patch (REST)UpdateTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
projects.locations.entryGroups.entries.tags.delete (REST)DeleteTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
政策标记和分类
政策标记和分类的 API 不会更改,也不需要迁移。
Knowledge Catalog 中不支持的功能
Knowledge Catalog 不支持以下 Data Catalog 行为和功能,或者这些行为和功能在 Knowledge Catalog 中的运作方式不同:
- 专用切面类型:不存在专用切面和专用切面 类型(与 Data Catalog 中的专用标记和专用标记模板相对应)的概念。所有自定义切面类型都受项目和条目组 Identity and Access Management 权限的控制。
- 政策标记搜索:目录搜索不支持使用
policytag或policytagid谓词搜索政策标记。 - 权限转移:将 Data Catalog 自定义 条目组、自定义条目、标记模板和标记导入 Knowledge Catalog 时,其原始权限不会 转移。您必须 配置 IAM 权限 为导入的资源。如需详细比较旧权限和 替换权限,请参阅 在 Data Catalog 和 Knowledge Catalog 之间映射 IAM 权限。
- Sensitive Data Protection 检查结果:不支持将 Sensitive Data Protection 检查结果直接发送到 Knowledge Catalog。请改为将检查结果发送到 Data Catalog,然后将结果转换为 Knowledge Catalog。
- 跨项目类型列出:不支持在单个 API 调用中列出各个项目的条目类型、条目链接类型和 切面类型;请求 必须限定为单个项目。
- 管理员搜索:不支持管理员搜索(完全召回)。请改为将元数据导出到 Cloud Storage,然后使用 BigQuery 查询这些元数据。