使用数据网域

作为数据域用户,您可以使用数据域将搜索结果缩小到特定业务背景,搜索 BigQuery 数据集、表和数据产品,并发现特定域边界内的元数据。

准备工作

在按域执行搜索之前,请确保您拥有所需角色并已启用 API。

启用 API

启用 Dataplex API(如果尚未启用)。

启用 API 所需的角色

如需启用 API,您需要拥有 serviceusage.services.enable 权限。如果您 创建了项目,则可能已通过 所有者角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。 了解如何授予角色。

启用 API

所需的角色

如需获得使用数据域搜索和发现元数据所需的权限,请让您的管理员向您授予项目或数据域的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。

浏览域层次结构

如需详细了解如何浏览域层次结构,请参阅查看某个位置的数据域和子域。

在数据域中查找资源

如需按域搜索资源,请按以下步骤操作:

控制台

  1. 在 Google Cloud 控制台中,前往 Knowledge Catalog > 搜索 页面。

    转到搜索

  2. 点击试用自然搜索 以激活自然搜索功能。

  3. 点击过滤器 。

  4. 在范围 字段中,从列表中选择域 。

  5. 在选择域 字段中,选择您要将结果范围缩小到的域。根据需要添加任何其他过滤条件。

或者,您可以使用在域内搜索 菜单选项在域中查找资源:

  1. 在 Google Cloud 控制台中,前往 数据域 页面。

    前往“数据域”

  2. 从 菜单中选择 在域内搜索 。此操作会自动打开一个搜索窗口,并应用域 过滤条件。

  3. 使用搜索字段在域中查找资源。

REST

如需搜索限定为数据域的条目,请使用 projects.locations.searchEntries 方法,并在 contexts 参数中提供域路径。

searchEntriesglobal

在使用任何请求数据之前, 请先进行以下替换:

  • PROJECT_ID:您的 Google Cloud 项目的 ID。
  • LOCATION_ID:搜索查询的区域(或 global)。
  • QUERY:搜索查询字符串。
  • DOMAIN_ID:定义搜索范围上下文的数据域的唯一标识符。

HTTP 方法和网址:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID:searchEntries

请求 JSON 正文:

{
  "query": "QUERY",
  "contexts": [ "projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID" ],
  "semantic_search": true,
  "page_size": 100
}

如需发送您的请求,请展开以下选项之一:

您应该会收到一个成功的状态代码 (2xx) 和一个空响应。

检索数据域的上下文

您可以使用 lookupContext 方法,根据数据 域捕获的业务背景来确定 AI 智能体的依据。lookupContext 方法通过以下方式支持数据域:

  • 数据域的上下文。您可以在 resources 列表中传递表示数据域的条目。响应包含数据域的元数据,例如其说明和域层次结构中的父数据域。
  • 数据资产的数据域成员资格。当您检索包含在一个或多个数据域中的数据资产的上下文时,响应会包含一个 dataDomains 字段,其中列出了该资产所属的数据域,从最具体的域开始,一直到顶级域。

如需检索数据域的上下文,请发送以下请求:

curl --request POST \
  'https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:lookupContext' \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H 'Content-Type: application/json' \
  -d '{
    "resources": [
      "projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION/dataDomains/DATA_DOMAIN_ID"
    ],
    "options": {
      "format": "yaml"
    }
  }'

替换以下内容:

  • PROJECT_ID:包含 数据域的项目的 ID。
  • PROJECT_NUMBER:包含数据域的项目的编号。
  • LOCATION:数据域的位置。
  • DATA_DOMAIN_ID:数据域的 ID。

如需详细了解 lookupContext 方法,请参阅 检索数据资产的上下文。

限制

当您在域上下文之外搜索资源时(例如使用全局搜索时),域的可发现性权限不适用。 您只能看到您在底层系统(例如 BigQuery)中有权访问的资源。

假设 BigQuery 数据集包含在数据域中。您拥有该域的 Dataplex Data Domain Entry Reader 角色,但没有直接在 BigQuery 中查看数据集的权限:

  • 在域内搜索: 您会在搜索结果中看到该数据集,因为域权限适用。
  • 在域外搜索: 您不会在搜索结果中看到该数据集。在宽泛搜索中,域权限不适用,并且您在 BigQuery 中没有直接访问权限。

后续步骤