使用結構化資料的資料洞察

AI 輔助資料洞察功能可依據結構化資料表和資料集中繼資料,自動生成說明、關係圖和 SQL 查詢。接著,您可以在 Knowledge Catalog (原稱 Dataplex Universal Catalog) 中查看及管理這些洞察資料,加速探索資料。

事前準備

使用資料洞察前,請務必完成下列必要條件:

必要的角色

如要取得使用資料洞察所需的權限,請要求管理員授予您下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這些預先定義的角色具備使用資料洞察所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

必須具備下列權限,才能使用資料洞察:

  • dataplex.datascans.create
  • dataplex.datascans.get
  • dataplex.datascans.getData
  • dataplex.datascans.run

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

啟用 API

如要使用資料洞察,請在專案中啟用下列 API:

  • Dataplex API
  • BigQuery API
  • Gemini for Google Cloud API

啟用 API 所需的角色

如要啟用 API,您必須具備 serviceusage.services.enable 權限。如果您建立了專案,可能已透過擁有者角色 (roles/owner) 取得這項權限。否則,您可以透過服務使用情形管理員角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。

啟用 API

如要進一步瞭解如何啟用 Gemini for Google Cloud API,請參閱「在 Google Cloud 專案中啟用 Gemini for Google Cloud API」。

準備資料

如果是 Lakehouse 資料表,請確認資料位於 Cloud Storage,且您已建立 Lakehouse 資料表。

如果是 Apache Iceberg REST 目錄資料表,請確認資料表已註冊至 Lakehouse 執行階段目錄。

在 BigQuery 中生成洞察資料

在 BigQuery Studio 中,您可以使用 Gemini in BigQuery,為 BigQuery 資料集、資料表、檢視表、Google Cloud BigLake 資料表、BigQuery 外部資料表和 Apache Iceberg 命名空間生成資料洞察。您只能在 BigQuery Studio 中為這些資源生成洞察資料。

您必須先設定 Gemini in BigQuery,才能生成洞察資料。生成洞察資料後,您可以在 Knowledge Catalog 中查看及修改。

如要進一步瞭解如何在 BigQuery 中生成洞察資料,請參閱下列文件:

生成 Apache Iceberg 資料表和命名空間的洞察資料

在 Knowledge Catalog 中,您可以針對 Google Cloud無邊界湖倉管理的 Apache Iceberg、Apache Hive 和 SAP BDC 資料表和命名空間,生成資料洞察。

如要為這些資源生成洞察資料,請完成下列步驟:

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Search」(搜尋) 頁面。

    前往「Search」(搜尋) 頁面

  2. 在「篩選器」中,找出素材資源類型:

    • Apache Iceberg 資料表:選取「Lakehouse」Lakehouse。
    • Apache Iceberg 命名空間:將 system 篩選器設為 BIGLAKE,並將 type 篩選器設為 namespace。
  3. 從搜尋結果中選取 Apache Iceberg 資料表或命名空間,開啟項目詳細資料頁面。

  4. 點按「深入分析結果」分頁標籤,如果分頁空白,表示這個資料表的洞察資訊尚未生成。

  5. 選擇生成選項:

    • 如要生成洞察資料,並以中繼資料切面的形式永久附加至資產,請按一下「Generate and publish」(生成及發布)。這樣一來,機構中的其他使用者就能在 Knowledge Catalog 中建立索引、搜尋及查看洞察資料。

    • 如要在目前工作階段中暫時生成及查看洞察資料,請按一下「生成但不發布」。

    如要進一步瞭解「Generate and publish」(生成並發布) 和「Generate without publishing」(生成但不發布) 模式之間的差異,請參閱「生成資料洞察的模式」。

  6. 選取區域即可產生洞察資訊,然後按一下「生成」。

    洞察資料會在幾分鐘內顯示。

  7. 點按「深入分析結果」分頁標籤,查看生成的中繼資料:

    • 資料表:查看 AI 生成的說明和查詢範例。
    • 命名空間:查看資料集說明、互動式關係圖和查詢建議。

    如要查看回答問題的 SQL 查詢,請按一下問題。

查看資源生成的洞察資料

如要查看資源生成的洞察資料,請完成下列步驟:

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Search」(搜尋) 頁面。

    前往「Search」(搜尋) 頁面

  2. 搜尋要查看洞察資料的資源。

  3. 在搜尋結果中,按一下資源,開啟項目詳細資料頁面。

  4. 查看為所選資源生成的「說明」和「查詢」。

  5. 如要查看關係圖,瞭解資料點之間的連結方式,請按一下「Relationships (Preview)」(關係 (預覽)) 分頁標籤。您可以在資料表層級查看關係,如果已產生資料集洞察資料,則可在資料集和命名空間層級查看。

管理資料表深入分析

生成並發布資料表深入分析後,您可以在 Knowledge Catalog 中,以中繼資料層面的形式查看及管理這些資訊。資料表層級洞察資訊包括資料表和資料欄說明,以及查詢範例。

更新資料表生成的說明

您只能使用 Dataplex API 更新資料表和資料欄說明。方法是使用 entries.patch 方法。

更新資料表的生成查詢

您可以使用 Google Cloud 控制台和 Dataplex API,更新為資料表生成的查詢。

控制台

  1. 搜尋要更新生成查詢的資料表。

  2. 在搜尋結果中,按一下資料表,開啟項目詳細資料頁面。

  3. 在「Queries」(查詢) 區段中,按一下 「Edit」(編輯)。

  4. 視需要更新查詢說明。

  5. 管理擁有權:根據預設,「來源」會設為「代理」。如果您修改查詢並將來源變更為「User」,後續的洞察生成作業就不會覆寫您的變更。如果「Source」(來源) 仍為「Agent」(代理),查詢可能會在重新生成時遭到取代。

  6. 管理覆寫:如要避免在重新執行期間覆寫所有查詢,可以將「User managed」(使用者管理) 選項設為「True」。這項規則適用於該中繼資料層面的整組查詢,確保不會遺失任何手動變更。

REST

如要更新資料表的查詢,請使用 entries.patch 方法。

更新資料表生成的關係

您只能使用 Dataplex API 更新關係。方法是使用 entries.patch 方法。

管理資料集洞察資訊

資料集層級的洞察資訊著重於高層級說明和資料集層級查詢。

更新資料集生成的說明

您只能使用 Dataplex API 更新資料集說明。方法是使用 entries.patch 方法。

更新資料集生成的查詢

您可以使用 Google Cloud 控制台和 Dataplex API,更新資料集生成的查詢。

控制台

  1. 搜尋要更新生成查詢的資料集。

  2. 在搜尋結果中,按一下資料集,開啟項目詳細資料頁面。

  3. 在「Queries」(查詢) 區段中,按一下 「Edit」(編輯)。

  4. 視需要更新說明。

  5. 管理擁有權:根據預設,「來源」會設為「代理」。如果您修改查詢並將來源變更為「User」,後續的洞察生成作業就不會覆寫您的變更。如果「Source」(來源) 仍為「Agent」(代理),查詢可能會在重新生成時遭到取代。

  6. 管理覆寫:如要避免在重新執行期間覆寫所有查詢,可以將「User managed」(使用者管理) 選項設為「True」。這項規則適用於該中繼資料層面的整組查詢,確保不會遺失任何手動變更。

REST

如要更新資料集的查詢,請使用 entries.patch 方法。

更新資料集產生的項目連結

資料洞察發現的關係會儲存為資料表項目之間的項目連結。這些連結包含 schema-join 方面,說明資料表的連結方式。

如要編輯這些關係或手動覆寫,請使用 Dataplex API。

項目連結更新行為

使用 API 管理關係時,請務必瞭解手動 API 更新與自動背景掃描之間的互動方式,以免不小心覆寫資料。

  • 手動更新 (API 層級行為):UpdateEntryLink API 會使用 PATCH 方法執行面向層級的替換:

    • 完整替換:如果在更新要求中加入 schema-join 類型,Knowledge Catalog 會以您提供的新類型,完整替換現有類型。

    • 不自動合併:API 不會自動將新項目合併至內部 joins 清單。如果提交的酬載只包含一個彙整,該面向中所有現有的彙整都會遭到移除。

  • 自動掃描 (系統層級行為):自動掃描 (例如資料洞察) 會先執行專門的合併邏輯,再呼叫 API,確保根據來源保留高確定性的中繼資料:

    • 來源優先順序:如果有多個來源識別出相同關係,Knowledge Catalog 會按照下列順序排定優先順序:

      1. USER (手動編輯)
      2. TABLE_CONSTRAINTS
      3. QUERY_HISTORY
      4. AGENT (LLM 建議)
    • LLM 更新間隔:從 AGENT 來源衍生的關係是動態的。如果後續掃描不再建議該關係,系統就會將其移除。

更新項目連結

如要查看及修改項目連結,請完成下列步驟:

  1. 找出項目連結。

    更新關係前,請先列出涉及特定資料表項目的所有項目連結,找出關係的資源名稱:

    gcurl -X GET "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entryLinks?filter=entry_references.name=\"TABLE_ENTRY_NAME\""
    

    更改下列內容:

    • PROJECT_ID: Google Cloud專案的 ID
    • LOCATION:觸發資料掃描作業的區域
    • TABLE_ENTRY_NAME:BigQuery 資料表項目的完整資源名稱 (例如 bigquery.googleapis.com/projects/my-project/datasets/my_dataset/tables/my_table)
  2. 更新項目連結。

    如要修改指定項目連結的 schema-join 方面,請使用 PATCH 方法:

    gcurl -X PATCH "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entryLinks/ENTRYLINK_ID?aspectKeys=dataplex-types.global.schema-join" \
    -d '{
      "aspects": {
        "dataplex-types.global.schema-join": {
          "data": {
            "joins": [
              {
                "source": { "name": "PROJECT_ID.DATASET_ID.SOURCE_TABLE", "fields": ["SOURCE_FIELD"] },
                "target": { "name": "PROJECT_ID.DATASET_ID.TARGET_TABLE", "fields": ["TARGET_FIELD"] },
                "type": "JOIN",
                "inferenceSource": "USER"
              }
            ],
            "userManaged": false
          }
        }
      }
    }'
    

    更改下列內容:

    • ENTRYLINK_ID:在上一個識別步驟中擷取的項目連結 ID
    • DATASET_ID:BigQuery 資料集的 ID
    • SOURCE_TABLE:來源資料表的名稱
    • SOURCE_FIELD:來源資料表中用於彙整的資料欄名稱
    • TARGET_TABLE:目標資料表的名稱
    • TARGET_FIELD:目標資料表中用於彙整的資料欄名稱

後續步驟