本文档介绍了如何在 Knowledge Catalog 中搜索数据资产。
准备工作
在执行搜索之前,请确保您已被授予所需角色,并且已启用必要的 API。
所需角色
如需获得在 Knowledge Catalog 中搜索条目和访问搜索结果所需的权限,请让您的管理员为您授予以下 IAM 角色:
-
搜索条目:
- Dataplex Catalog Admin (
roles/dataplex.catalogAdmin) 针对用于搜索的项目的 - Dataplex Catalog Editor (
roles/dataplex.catalogEditor) 针对用于搜索的项目的 - Dataplex Catalog Viewer (
roles/dataplex.catalogViewer) 针对用于搜索的项目的
- Dataplex Catalog Admin (
-
搜索 BigQuery 数据集和表的元数据:
BigQuery Metadata Viewer (
roles/bigquery.metadataViewer) 针对数据集或表 -
搜索自定义条目:
Dataplex Catalog Viewer (
roles/dataplex.catalogViewer) 针对用于搜索的项目的
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。
资产级权限
搜索结果的范围取决于您的访问权限级别,与所选项目无关。如需在 Knowledge Catalog 中查找资产,您必须在底层源系统中拥有该资源的相应读取权限。
例如,查找 BigQuery 表需要
roles/bigquery.metadataViewer 角色,而查找 Cloud SQL 实例
需要其等效的
Cloud SQL 权限。如需了解更多
详情,请参阅搜索范围。
启用 API
启用 Dataplex API。
启用 API 所需的角色
如需启用 API,您需要拥有 serviceusage.services.enable 权限。如果您
创建了项目,则可能已通过
所有者角色 (roles/owner) 拥有此权限。否则,您可以通过
Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。
了解如何授予角色。
搜索资源
控制台
如需搜索资源,请按照以下步骤操作:
在 Google Cloud 控制台中,前往 Knowledge Catalog 搜索 页面。
如果您看到试用自然语言搜索 按钮提示,请点击该按钮。 默认情况下,系统会选择自然语言搜索。
在使用自然语言在多个项目中查找资源 字段中, 输入查询内容,然后点击 Enter。
如需优化搜索,请点击过滤条件 。
- 系统会使用
AND逻辑运算符评估多个部分中的过滤条件。 - 系统会使用
OR逻辑运算符评估单个部分中的多个过滤条件。
您可以使用以下过滤条件:
- 范围:在整个组织(默认)、当前项目或仅在已加星标的资源中进行搜索。如需了解详情,请参阅 搜索范围。
- 系统:资源所属的 Google Cloud 服务, 例如 BigQuery。Knowledge Catalog 系统 包含 条目组。
- 项目 :要搜索的项目。
- 类型:资源类型,例如 BigQuery 连接、Cloud Storage 存储桶或数据库。根据资源类型的不同,您还可以按子类型(例如连接类型或 SQL 方言)进行过滤。
- 选择位置:要搜索的位置。
- 选择数据集:搜索结果仅限于属于所选 BigQuery 数据集的 BigQuery 资源。 在输入文本以进行过滤 字段中,输入数据集的名称。
- 切面类型:与您要搜索的资源相关联的 Knowledge Catalog 切面类型。如需按 切面值过滤,请点击按切面类型值过滤 ,然后选择相应 值。
- 系统会使用
如需查看有关搜索到的资源的更多信息,请在搜索结果中点击资源名称,以打开条目详情页面。
Google Cloud CLI
如需搜索资源,请使用
gcloud dataplex entries search 命令:
gcloud dataplex entries search 'foo' \ --project=PROJECT_ID \ --semantic-search
将 PROJECT_ID 替换为 Google Cloud 项目的 ID。
C#
C#
试用此示例之前,请按照 C# 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Go
Go
试用此示例之前,请按照 Go 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照 Java 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 客户端库。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照 Node.js 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
PHP
PHP
试用此示例之前,请按照 PHP 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 客户端库。 如需了解详情,请参阅 Knowledge Catalog PHP API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照 Python 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 使用客户端库。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Ruby
Ruby
试用此示例之前,请按照 Ruby 设置说明进行操作。请参阅 Knowledge Catalog 快速入门:使用客户端库。如需了解详情,请参阅 Knowledge Catalog Ruby API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
REST
如需搜索资源,请使用
searchEntries 方法,并将 SemanticSearch 参数设置为 true。
POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:searchEntries?query=foo&semanticSearch=true
替换以下内容:
- PROJECT_ID:您的 Google Cloud 项目的 ID
- LOCATION:项目所在的区域(例如
us-central1)
查看搜索返回的资产的详细信息
控制台
使用 Knowledge Catalog 搜索功能查看资产的详细信息。
在搜索结果中,点击要查看其详细信息的资产。
系统会打开条目详情页面。该页面包含以下部分:
- 条目详情:包括条目类型、系统、 平台、完全限定名称、创建时间、上次修改时间、 说明和管理员等信息。
- 概览:条目的概览(如果有)。
- 切面:为条目定义的必需切面和可选切面。如需了解详情,请参阅切面类别。
gcloud
gcloud dataplex entries lookup 命令:
gcloud dataplex entries lookup ENTRY_ID \ --entry-group=ENTRY_GROUP_ID \ --location=LOCATION \ --project=PROJECT_ID
替换以下内容:
ENTRY_ID:条目的 IDENTRY_GROUP_ID:条目组的 IDLOCATION:项目所在的区域PROJECT_ID: Google Cloud 项目的 ID
C#
C#
试用此示例之前,请按照 C# 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Go
Go
试用此示例之前,请按照 Go 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照 Java 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 客户端库。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照 Node.js 设置说明进行操作。请按照 Knowledge Catalog 快速入门:使用 客户端库中的说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
PHP
PHP
试用此示例之前,请按照 PHP 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 客户端库。 如需了解详情,请参阅 Knowledge Catalog PHP API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照 Python 设置说明进行操作,具体请参阅 Knowledge Catalog 快速入门:使用 使用客户端库。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
Ruby
Ruby
试用此示例之前,请按照 Ruby 设置说明进行操作。请参阅 Knowledge Catalog 快速入门:使用客户端库。如需了解详情,请参阅 Knowledge Catalog Ruby API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅 为本地开发环境设置身份验证。
REST
如需查看资产的详细信息,请使用 lookupEntry 方法。
限制
搜索功能存在以下限制:
- 公共资源不在自然语言搜索的范围内。
- 附加到条目链接的切面不在自然语言搜索的范围内。
后续步骤
- 了解 Knowledge Catalog 的搜索语法。
- 详细了解 Knowledge Catalog 中的元数据。
- 了解如何使用切面通过元数据丰富条目和条目链接。
- 了解如何管理条目和注入自定义来源。
- 尝试 Knowledge Catalog 应用场景。
- 利用 Knowledge Catalog 发现代理回答复杂的自然语言查询。