生成資料集洞察資訊
資料洞察功能可協助您瞭解 BigQuery 資料集和 Apache Iceberg 命名空間中資料表之間的關係,方法是在圖表中探索及視覺化資料表之間的關係、找出結構定義定義、依據用量或 AI 推論的關係,以及生成跨資料表查詢範例。
如需資料表和資料集洞察的總覽,請參閱「資料洞察總覽」。
生成資料集深入分析資訊的模式
生成資料集洞察時,BigQuery 提供兩種模式:
| 模式 | 說明 | 用量 |
|---|---|---|
| 生成並發布 |
將生成的資料集深入分析資訊,以中繼資料切面和關係的形式,永久儲存至 Knowledge Catalog。您必須具備必要權限才能發布。使用「Generate and publish」(生成並發布) 時,BigQuery 會執行下列操作:
|
如要建立可永久保存及重複使用的企業級資料說明文件,或建構目錄導向的治理工作流程,請使用這個模式。 |
| 生成但不發布 |
視需要建立資料集洞察,例如說明、自然語言問題、關係和 SQL 查詢。生成但不發布:不會將洞察資料發布至 Knowledge Catalog。 |
如要快速進行臨時探索,請使用這個模式,以免目錄雜亂。 |
事前準備
資料洞察是使用 Gemini in BigQuery 生成。如要開始生成洞察資料,請先設定 Gemini in BigQuery。
啟用 API
如要使用資料洞察,請在專案中啟用下列 API:Dataplex API、BigQuery API 和 Gemini for Google Cloud API。
啟用 API 所需的角色
您必須具備 serviceusage.services.enable 權限,才能啟用 API。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「Service Usage 管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。
如要進一步瞭解如何啟用 Gemini for Google Cloud API,請參閱「在 Google Cloud 專案中啟用 Gemini for Google Cloud API」。
完成資料剖析掃描
如要提升洞察品質,請為資料集中的資料表產生資料剖析掃描。
必要的角色
如要取得生成、管理及擷取資料集洞察所需的權限,請要求管理員授予您下列 IAM 角色:
-
如要生成、管理及擷取洞察資料,請按照下列步驟操作:
- 專案的 Dataplex DataScan 編輯者 (
roles/dataplex.dataScanEditor) 或 Dataplex DataScan 管理員 (roles/dataplex.dataScanAdmin) - 資料表的 BigQuery 資料編輯者 (
roles/bigquery.dataEditor) - 專案的 BigQuery 使用者 (
roles/bigquery.user) 或 BigQuery Studio 使用者 (roles/bigquery.studioUser) - 專案的 BigQuery 資源檢視者 (
roles/bigquery.resourceViewer)
- 專案的 Dataplex DataScan 編輯者 (
-
如要查看洞察資料,請按照下列步驟操作:
- 專案的 Dataplex DataScan 資料檢視者 (
roles/dataplex.dataScanDataViewer) - BigQuery 資料檢視者 (
roles/bigquery.dataViewer) 角色 (資料集)
- 專案的 Dataplex DataScan 資料檢視者 (
-
如要將洞察資訊發布至 Knowledge Catalog:項目群組的 Dataplex 項目和 EntryLink 擁有者 (
roles/dataplex.entryOwner)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
如要查看生成洞察資料所需的確切權限,請展開「Required permissions」(必要權限) 部分:
所需權限
bigquery.datasets.get:讀取資料集中繼資料bigquery.jobs.create:建立工作bigquery.jobs.listAll:列出專案中的所有工作bigquery.tables.get:取得資料表中繼資料bigquery.tables.getData:取得資料表資料和中繼資料dataplex.datascans.create:建立資料掃描資源dataplex.datascans.get:讀取資料掃描資源中繼資料dataplex.datascans.getData:讀取資料掃描執行結果dataplex.datascans.run:執行隨選資料掃描dataplex.entryGroups.useSchemaJoinEntryLink:使用schema-join項目連結dataplex.entryGroups.useSchemaJoinAspect:使用結構定義彙整切面dataplex.entryLinks.create:建立項目連結dataplex.entryLinks.update:更新項目連結dataplex.entryLinks.delete:刪除項目連結dataplex.entries.link:連結項目dataplex.entries.update:更新項目dataplex.entryGroups.useDescriptionsAspect:使用說明切面dataplex.entryGroups.useQueriesAspect:使用查詢切面
生成資料集洞察資訊
控制台
前往 Google Cloud 控制台的「BigQuery Studio」。
在「Explorer」窗格中,選取要生成洞察資料的專案和資料集。如果是 Iceberg 命名空間,請選取代表目錄命名空間的資料集。
點按「深入分析結果」分頁標籤。
如要生成洞察資料並發布至 Knowledge Catalog,請按一下「Generate and publish」(生成並發布)。
如要生成洞察資料,但不發布至 Knowledge Catalog,請點按「生成但不發布」。
如要進一步瞭解「Generate and publish」(生成並發布) 和「Generate without publishing」(生成但不發布) 模式之間的差異,請參閱「生成資料集深入分析的模式」。
如果資料集位於多區域,系統可能會提示您選取要產生洞察資料的區域。請依據要建立洞察資訊掃描作業的多區域,選取相應的區域。
系統需要幾分鐘才能填入洞察資料。如果資料集中的資料表有資料剖析結果,深入分析的品質就會提升。
生成洞察後,BigQuery 會顯示資料集說明、關係圖、關係資料表,以及跨資料表查詢範例。
REST
如要以程式輔助方式生成洞察資料,請使用 Knowledge Catalog DataScans API。如要這樣做,請按照下列步驟進行:
為 BigQuery 資料集產生資料說明文件資料掃描
使用
dataScans.create方法建立資料說明文件資料掃描作業。您也可以將catalog_publishing_enabled參數設為true,將這些洞察資訊發布至 Knowledge Catalog。例如:
alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' gcurl -X POST \ https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/\ dataScans?dataScanId=DATASCAN_ID \ -d '{ "data": { "resource": "//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID" }, "executionSpec": { "trigger": { "onDemand": {} } }, "type": "DATA_DOCUMENTATION", "dataDocumentationSpec": { "catalog_publishing_enabled": true } }'更改下列內容:
- PROJECT_ID:資料集所在的 Google Cloud專案 ID
- LOCATION:資料掃描作業執行的區域
- DATASCAN_ID:您為這項掃描作業提供的專屬名稱
- DATASET_ID:要掃描的 BigQuery 資料集 ID
使用
dataScans.run方法啟動資料文件掃描工作。例如:
gcurl -X POST \ https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/\ dataScans/DATASCAN_ID:run這項要求會傳回專屬工作 ID 和初始狀態。
查看資料文件掃描狀態
使用 dataScans.get 方法,檢查掃描工作執行作業是否完成。如要擷取完整結果 (包括洞察資料和發布狀態),請將 view 參數設為 FULL。
使用工作 ID 擷取工作狀態。例如:
gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID/jobs/JOB_ID?view=FULL
狀態為 SUCCEEDED 或 FAILURE 時,工作即完成。
如果工作成功,回應的 dataDocumentationResult 欄位會包含生成的洞察資料。
確認發布至 Knowledge Catalog
如果 catalog_publishing_enabled 設為 true,則資料掃描工作完成後,洞察資訊會以非同步方式發布至 Knowledge Catalog。如要確認洞察資料是否已保存,請使用 Dataplex API 檢查資料集的切面。
雖然洞察資料是透過資料集層級的資料掃描產生,但產生的項目連結會儲存在連結的資料表之間。如要驗證這些關係,請使用 lookupEntryLinks 方法,擷取與特定資料表項目相關聯的項目連結。
如要擷取 BigQuery 資料集的中繼資料,請使用 entries.get 方法。如要納入所有面向,請將 view 參數設為 FULL。例如:
gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entries/bigquery.googleapis.com/projects/DATASET_PROJECT_ID/datasets/DATASET_ID?view=FULL
更改下列內容:
- PROJECT_ID:設定資料掃描作業的 Google Cloud專案 ID
- LOCATION:項目群組所在的區域
- DATASET_PROJECT_ID:BigQuery 資料集所在 Google Cloud專案的 ID
- DATASET:BigQuery 資料集的 ID
如果成功發布至 Knowledge Catalog,下列面向會附加至 BigQuery 資料集:
- 說明:包含 AI 生成的資料集說明
- 查詢:包含與資料集相關的 SQL 查詢
- 關係:以資料集中資料表之間的項目連結形式保留
查看及儲存資料集說明
Gemini 會生成資料集的自然語言說明,摘要說明資料集包含的資料表類型和代表的業務領域。如要將這段說明儲存至資料集的中繼資料,請按一下「Save to details」(儲存至詳細資料)。
儲存詳細資料前,您可以編輯說明。
探索關係圖
「Relationships」(關係) 圖表會以視覺化方式呈現資料集中資料表之間的關係。圖表會將關聯性最高的前 10 個資料表顯示為節點,並以線條代表資料表之間的關係。
- 如要查看關係詳細資料 (例如彙整兩個資料表的資料欄),請將滑鼠游標懸停在連接資料表節點的邊緣上。
- 如要重新排列圖表,以便更清楚地查看,請拖曳資料表節點。
使用關係表
「Relationship table」(關係表格) 會以表格格式列出探索到的關係。每一列代表兩個資料表之間的關係,顯示來源資料表和資料欄,以及目的地資料表和資料欄。「Source」(來源) 欄會指出關係的判定方式:
- LLM 推論:Gemini 根據資料集中的資料表和資料欄名稱及說明,推論出的關係。
- 按用量計費。根據頻繁彙整,從查詢記錄中擷取的關係。
- 結構定義。從資料表結構定義中現有的主鍵和外鍵對應關係衍生而來。
您可以篩選特定資料表的關係,或針對偵測到的關係品質提供意見回饋。如要將產生的資料集說明和關係匯出至 JSON 檔案,請按一下「Export to JSON」(匯出至 JSON)。
使用查詢建議
Gemini 會根據發現的關係生成範例查詢。這些是自然語言問題,並附有對應的 SQL 查詢,可彙整資料集中的多個資料表。
如要查看 SQL 查詢,請點選問題。
如要在 BigQuery 查詢編輯器中開啟查詢,請按一下「Copy to query」(複製到查詢)。接著,您可以執行或修改查詢。
如要提出後續問題,請點按「Ask a follow-up」(提出後續問題),系統會開啟未命名的資料畫布,您可以在其中與 Gemini 對話,探索資料。
管理生成的洞察資料
生成資料集的洞察資料後,您可以在 Knowledge Catalog 中管理、更新或刪除這些資料。詳情請參閱「管理資料集深入分析」。
後續步驟
- 請參閱資料洞察總覽。
- 瞭解如何生成表格洞察。
- 進一步瞭解 Knowledge Catalog 資料剖析。