Knowledge Catalog 中的搜索功能简介

使用 Knowledge Catalog(以前���为 Dataplex Universal Catalog)搜索功能,通过自然语言查询(包括语义匹配、关键字和结构化谓词)发现组织中的资源。

使用场景

以下列表介绍了常见的搜索用例,并提供了说明和示例查询:

  • 有针对性的资产查找:通过搜索与资产名称、列或说明相关的关键字来查找特定资产。

    示例查询

    • retail_transactions_2026
    • customer_id
    • column:customer_id
  • 广泛的数据发现:使用开放式自然语言或关键字查询,在整个组织中识别相关资产。

    示例查询

    • quarterly financial reports
    • ad campaign click through rates tables
    • server health metrics
    • audit logs system=bigquery
  • 工作流的范围限定型资源检索:列举特定容器(例如项目)内或具有特定属性(例如类型或系统)的资源。此方法经常用于程序化和代理工作流。

    示例查询

    • type=table projectid:banking-prod aspect:classification.tier=PII
    • system=spanner projectid:inventory-service (parent=marketing_analytics OR parent=finance_analytics)

工作原理

搜索会自动为 Knowledge Catalog 中维护的数据资产的所有上下文编制索引。这包括以下内容:

  • 自动从 Google Cloud 数据源(例如 BigQuery 和 Cloud SQL)提取的元数据
  • 通过连接器和集成注入的资源的上下文
  • 您为资源创建的其他情境,例如表示业务情境或描述数据语义。上下文也可以通过方面或关联的业务术语来捕获。

在处理您的查询时,搜索功能会同时应用语义匹配和关键字匹配。下表介绍了可用于 Knowledge Catalog 搜索的查询类型,以及说明和示例查询:

查询类型 用法 示例
单个关键字 用于在元数据元素(例如资源名称、说明和架构)中进行完全匹配和子字符串匹配。 prd_fin_invoices_fct_v02
部分关键字和分词片段 匹配元数据内容中的子字符串,即使资源包含缩写字词、分隔字词或命名变体,也能找到。 fin transactions 2026(匹配数:prd_fin_transactions_fy2026_raw
自然语言查询 使用语义匹配,无需完全匹配名称或列。 customer churn prediction features
结构化谓词 将自由文本查询与明确的谓词过滤条件相结合,以缩小搜索结果范围。 audit logs system=bigquery
扩展语法 用于精确搜索,缩小到特定范围。扩展语法最常用于智能体和程序化用例。如需了解详情,请参阅搜索语法 (system:bigquery OR system:spanner) AND column:credit_card_number aspect:classification.tier=PII -projectid:sandbox-project

您可以通过以下方式在 Knowledge Catalog 中使用搜索功能:

搜索范围

Knowledge Catalog 中的搜索结果会考虑您对源系统中相应资源的权限。

例如,如果您拥有某个对象的 BigQuery 元数据读取权,则该对象会显示在您的 Knowledge Catalog 搜索结果中。如果您有权访问某个 BigQuery 表,但无权访问该表所属的数据集,则该表��会按预期方式显示在 Knowledge Catalog 搜索中。

默认情况下,搜索范围限定为您的组织。结果仅包含与您搜索的项目属于同一组织的资源。

搜索结果仅包含与执行搜索的项目属于同一 VPC Service Controls 边界的资源。使用Google Cloud 控制台时,这是在控制台中选择的项目。

如需将搜索结果的范围扩大到项目 VPC Service Controls 边界内的资源之外,请使用 VPC Service Controls 入站流量和出站流量规则。这些规则有助于在组织中以不公开方式高效地交换数据。您可以使用Google Cloud 控制台或通过 JSON 或 YAML 文件来配置入站和出站规则。请参阅以下 YAML 示例,并查阅 VPC Service Controls 文档,以便根据您的具体要求调整规则。

egressPolicies:
  - egressFrom:
      identityType: ANY_USER_ACCOUNT
    egressTo:
      # Specify which resources should be present in the search results. In this example,
      # BigQuery.
      operations:
      - methodSelectors:
        - method: '*'
        serviceName: bigquery.googleapis.com
      # Specify project ids under which the search is performed.
      resources:
      - projects/SEARCH_PROJECT_ID
ingressPolicies:
  - ingressFrom:
      identityType: ANY_USER_ACCOUNT
      sources:
      - accessLevel: '*'
    ingressTo:
      # Specify which resources should be present in the search results. In this example,
      # BigQuery.
      operations:
      - methodSelectors:
        - method: '*'
        serviceName: bigquery.googleapis.com
      # Specify project ids to expose in search results.
      resources:
      - projects/INGRESS_PROJECT_ID

如需详细了解您需要使用 Knowledge Catalog 搜索的 Identity and Access Management 角色,请参阅 Knowledge Catalog IAM 角色

使用 VPC Service Controls 按环境隔离搜索结果

如需在开发、测试和生产等环境之间隔离 Knowledge Catalog 搜索结果,请为每个环境配置单独的 VPC Service Controls 边界。将包含数据资产的项目和用于执行搜索的项目都分配到相应环境的边界。从特定边界内的项目执行的搜索只会返回位于同一边界内的资产的结果。

搜索中的召回限制

Knowledge Catalog 搜索查询并不能保证完全召回,这意味着搜索可能不会返回与您的查询匹配的结果。此外,如果您重复搜索查询,返回(和未返回)的结果可能会有所不同。

如需查询所有 Knowledge Catalog 元数据,您可以将元数据导出到 Cloud Storage,然后从 BigQuery 中查询这些元数据。如需了解详情,请参阅导出元数据

后续步骤