在 BigQuery 中產生資料洞察
資料洞察功能會自動探索、解讀及整理資料。Gemini in BigQuery 會根據資料表的中繼資料,生成自然語言問題和 SQL 查詢,以提供資料洞察。這些洞察資訊有助於發掘模式、評估資料品質,以及執行統計分析。
您也可以使用資料洞察功能,根據資料表的中繼資料產生資料表和資料欄說明,並發布至 Dataplex Universal Catalog。這項功能有助於記錄資料以進行有意義的分析,並提升資料集曝光度。
本頁說明資料洞察的主要功能,以及如何自動產生查詢,以探索有洞察力的資料。
事前準備
資料洞察資訊是使用 Gemini in BigQuery 生成。 如要開始生成洞察,請先設定 Gemini in BigQuery。
必要的角色
如要建立、管理及擷取資料洞察,請要求管理員授予下列 IAM 角色:
您要產生洞察資料的專案必須具備 Dataplex DataScan 編輯者 (
roles/dataplex.dataScanEditor) 或 Dataplex DataScan 管理員 (roles/dataplex.dataScanAdmin) 角色。要產生洞察的 BigQuery 資料表上的 BigQuery 資料檢視者 (
roles/bigquery.dataViewer)。要產生洞察資訊的 BigQuery 資料表,您必須具備BigQuery 資料編輯者 (
roles/bigquery.dataEditor) 權限。在要產生洞察資料的專案中,您必須具備「BigQuery 使用者」(
roles/bigquery.user) 或「BigQuery Studio 使用者」(roles/bigquery.studioUser) 角色。
如要取得所產生洞察資料的唯讀權限,請要求管理員授予下列 IAM 角色:
- Dataplex DataScan DataViewer (
roles/dataplex.dataScanDataViewer) 在包含要查看洞察資料的 BigQuery 資料表的專案中。
如要將資料洞察發布至 Dataplex Universal Catalog,請要求管理員在資源中授予您下列 IAM 角色:
將說明發布為切面: Dataplex Catalog 編輯者 (
roles/dataplex.catalogEditor)將查詢發布為構面: Dataplex 項目和 EntryLink 擁有者 (
roles/dataplex.entryOwner)
如要啟用 API,請要求管理員授予下列 IAM 角色:
- 您要產生洞察資料的專案,必須具備服務使用情形管理員 (
roles/serviceusage.serviceUsageAdmin) 角色。
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。如要查看生成洞察資料所需的確切權限,請展開「Required permissions」(必要權限) 部分:
所需權限
bigquery.jobs.createbigquery.tables.getbigquery.tables.getDatadataplex.datascans.createdataplex.datascans.getdataplex.datascans.getDatadataplex.datascans.run
啟用 API
如要使用資料洞察功能,請在專案中啟用下列 API:Dataplex API、BigQuery API 和 Gemini for Google Cloud API。
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM
role (roles/serviceusage.serviceUsageAdmin), which
contains the serviceusage.services.enable permission. Learn how to grant
roles.
如要進一步瞭解如何啟用 Gemini for Google Cloud API,請參閱「在專案中啟用 Gemini for Google Cloud API Google Cloud 」。
關於資料洞察
探索不熟悉的新資料表時,資料分析師經常會遇到冷啟動問題。問題通常涉及資料結構、重要模式和資料中的相關洞察結果的不確定性,因此難以開始編寫查詢。
資料洞察功能會根據資料表的 metadata,自動生成自然語言查詢及其對應的 SQL,解決冷啟動問題。您不必從空白的查詢編輯器開始,而是可以透過有意義的查詢快速開始探索資料,並取得有價值的洞察資料。如要進一步調查,可以在資料畫布中提出後續問題。
洞察資料執行範例
假設有一個名為 telco_churn 的資料表,其中繼資料如下:
| 欄位名稱 | 類型 |
|---|---|
| CustomerID | STRING |
| 性別 | STRING |
| 年資 | INT64 |
| InternetService | STRING |
| StreamingTV | STRING |
| OnlineBackup | STRING |
| 合約 | STRING |
| TechSupport | STRING |
| PaymentMethod | STRING |
| MonthlyCharges | FLOAT |
| 流失 | BOOLEAN |
以下是資料洞察功能為這個表格產生的一些查詢範例:
找出訂閱所有進階服務,且成為顧客超過 50 個月的使用者。
SELECT CustomerID, Contract, Tenure FROM agentville_datasets.telco_churn WHERE OnlineBackup = 'Yes' AND TechSupport = 'Yes' AND StreamingTV = 'Yes' AND Tenure > 50;找出流失最多顧客的網際網路服務。
SELECT InternetService, COUNT(DISTINCT CustomerID) AS total_customers FROM agentville_datasets.telco_churn WHERE Churn = TRUE GROUP BY InternetService ORDER BY total_customers DESC LIMIT 1;找出高價值顧客的區隔流失率。
SELECT Contract, InternetService, Gender, PaymentMethod, COUNT(DISTINCT CustomerID) AS total_customers, SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) AS churned_customers, (SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) / COUNT(DISTINCT CustomerID)) * 100 AS churn_rate FROM agentville_datasets.telco_churn WHERE MonthlyCharges > 100 GROUP BY Contract, InternetService, Gender, PaymentMethod;
生成洞察資料的模式
BigQuery 提供兩種產生洞察資料的模式:
| 模式 | 說明 | 用量 |
|---|---|---|
| 生成並發布 (預覽) | 將產生的洞察資訊以中繼資料切面形式,儲存至 Dataplex Universal Catalog。您必須具備發布權限。 使用「產生並發布」時,系統會執行下列動作:
|
如果需要永久保存及重複使用企業資料文件,或是要建構以目錄為導向的控管工作流程,請使用這個模式。 |
| 生成但不發布 | 視需要建立洞察資料 (說明、自然語言問題和 SQL 查詢)。洞察資料不會發布至 Dataplex Universal Catalog。 | 使用這個模式進行快速的臨時探索,避免目錄雜亂。 |
改善產生的洞察資料的最佳做法
如要提高生成洞察資料的準確度,請遵循下列最佳做法:
根據資料剖析結果深入分析
在生成式 AI 領域,建立基準是指將模型輸出內容連結至可驗證的資訊來源。您可以根據資料剖析結果,生成洞察資訊。資料剖析功能會分析 BigQuery 資料表中的資料欄,找出常見的統計特徵,例如一般資料值和資料分布情形。為資料表建立資料剖析掃描作業時,您可以選擇將掃描結果發布至 Google Cloud 控制台的 BigQuery 和 Dataplex Universal Catalog 頁面。BigQuery 會使用資料剖析結果,透過下列方式建立更準確的相關查詢:
- 分析資料剖析結果,找出資料中值得關注的模式、趨勢或離群值。
- 生成查詢,著重於這些模式、趨勢或離群值,以發掘洞察資訊。
- 根據資料剖析結果驗證生成的查詢,確保查詢傳回有意義的結果。
如果沒有資料剖析掃描,會發生下列情況:
- 生成的查詢較可能包含不準確的子句或產生無意義的結果。
- 產生的資料欄說明僅根據資料欄名稱。
確認資料表的資料剖析掃描作業為最新狀態,且結果已發布至 BigQuery。
您可以調整資料剖析設定,增加取樣大小,並篩除列和欄。執行新的資料剖析掃描後,請重新產生洞察資料。
新增資料表說明
詳細說明資料表內容,有助於 Gemini in BigQuery 產生更相關的洞察資料。新增資料表說明後,重新產生洞察資料。
舉例來說,您可能會在 telco_churn 資料表中新增下列說明:「這個資料表會追蹤客戶流失資料,包括訂閱詳細資料、任期和服務用量,以預測客戶流失行為。」
如果儲存 Gemini 生成的資料表說明,系統就會使用該說明生成未來的洞察資料。
新增資料欄說明
說明每個資料欄的用途,或一個資料欄與另一個資料欄的關係,有助於提升洞察資料的品質。更新表格中的資料欄說明後,請重新產生洞察資料。
舉例來說,您可能會在 telco_churn 資料表的特定資料欄中新增下列說明:
Tenure:「顧客使用服務的月數」。Churn:客戶是否已停止使用服務。TRUE 表示客戶不再使用該服務,FALSE 表示客戶仍在使用該服務。」
如果儲存 Gemini 生成的資料欄說明,系統就會使用這些說明生成日後的洞察資料。
產生 BigQuery 資料表的洞察資料
控制台
如要產生 BigQuery 資料表的洞察資訊,必須使用 BigQuery Studio 存取 BigQuery 中的資料表項目。
前往 Google Cloud 控制台的「BigQuery Studio」。
點選左側窗格中的 「Explorer」:

如果沒有看到左側窗格,請按一下「展開左側窗格」圖示 開啟窗格。
在「Explorer」窗格中,按一下「Datasets」,然後選取資料集。
依序按一下「總覽」>「表格」,然後選取要產生洞察資料的表格。
按一下「洞察」分頁標籤。如果分頁空白,表示系統尚未產生這個資料表的洞察資料。
如要產生洞察資料並發布至 Dataplex Universal Catalog,請按一下「產生並發布」(預覽)。
如要產生洞察資料,但不發布至 Dataplex Universal Catalog,請按一下「Generate without publish」(產生但不發布)。
如要進一步瞭解「產生並發布」和「產生但不發布」模式之間的差異,請參閱「產生洞察資料的模式」。
選取要產生洞察資訊的區域,然後按一下「產生」。
洞察資料需要幾分鐘才會填入。
如果資料表有已發布的資料剖析結果,系統會使用這些結果產生洞察資訊。否則,系統會依據資料欄名稱和說明產生洞察結果。
在「洞察」分頁中,查看系統生成的自然語言問題。
如要查看回答問題的 SQL 查詢,請按一下該問題。
如要在 BigQuery 中開啟查詢,請按一下「複製到查詢」。
如要提出後續問題,請按照下列步驟操作:
按一下「繼續提問」。查詢會在新的資料畫布中開啟。
按一下「執行」,然後按一下「查詢這些結果」。
如要提出後續問題,請在「自然語言」提示欄位中輸入提示,或在查詢編輯器中編輯 SQL。
如要產生一組新的查詢,請按一下「產生洞察資料」,然後再次觸發管道。
為表格產生洞察資料後,只要使用者具備dataplex.datascans.getData權限並可存取表格,就能查看這些洞察資料。
REST
如要產生 BigQuery 資料表的洞察資料,請使用 Dataplex Universal Catalog DataScans API 支援的 DATA_DOCUMENTATION 掃描類型。這些掃描作業會產生中繼資料,包括用於資料探索的深入分析 SQL 查詢、結構定義說明和資料表層級摘要。
如要為 BigQuery 資料表產生資料洞察,請按照下列步驟操作:
選用:建立資料表的資料剖析掃描作業。這些掃描結果可做為 Gemini 的基礎,讓輸出內容以資料中的實際值為準,減少生成錯誤資訊和近似值。
使用
dataScans.create方法建立資料剖析掃描作業。使用
dataScans.run方法執行資料剖析掃描。等待執行完成。將下列資料剖析標籤附加至資料表,將掃描結果發布至 BigQuery 資料表:
- dataplex-dp-published-scan:DATASCAN_ID
- dataplex-dp-published-project:PROJECT_ID
- dataplex-dp-published-location:LOCATION
詳情請參閱「為資料表和檢視區塊新增標籤」。
為 BigQuery 資料表產生資料文件資料掃描:
使用
dataScans.create方法建立資料文件資料掃描作業。例如:
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/tables/TABLE_ID" }, "executionSpec": { "trigger":{ "onDemand":{} } }, "type":"DATA_DOCUMENTATION", "dataDocumentationSpec":{}}'更改下列內容:
- PROJECT_ID:資料集所在專案的 ID Google Cloud
- LOCATION:執行資料掃描的區域
- DATASCAN_ID:您為這項掃描作業提供的專屬名稱
- DATASET_ID:要掃描的 BigQuery 資料集 ID
- TABLE_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方法檢查掃描作業是否完成。使用工作 ID 擷取工作狀態。例如:
gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID/jobs/JOB_ID狀態為
SUCCEEDED或FAILURE時,即代表工作完成。將下列資料文件標籤附加至資料表,即可將掃描結果發布至 BigQuery 資料表:
- dataplex-data-documentation-published-scan:DATASCAN_ID
- dataplex-data-documentation-published-project:PROJECT_ID
- dataplex-data-documentation-published-location:LOCATION
產生 BigQuery 外部資料表的洞察資料
BigQuery 資料洞察支援為 BigQuery 外部資料表產生洞察,這些資料表含有 Cloud Storage 中的資料。您和目前專案的 Dataplex Universal Catalog 服務帳戶,必須在含有資料的 Cloud Storage bucket 上具備「Storage 物件檢視者」角色 (roles/storage.objectViewer)。詳情請參閱將主體新增至值區層級政策。
如要為 BigQuery 外部資料表產生洞察資料,請按照本文「為 BigQuery 資料表產生洞察資料」一節中的操作說明進行。
產生 BigLake 資料表的洞察資料
如要為 BigLake 資料表產生洞察資料,請按照下列步驟操作:
在專案中啟用 BigQuery Connection API。
建立 BigQuery 連線。詳情請參閱「管理連線」。
將 Storage 物件檢視者 (
roles/storage.objectViewer) IAM 角色授予您建立的 BigQuery 連線所對應的服務帳戶。您可以從連線詳細資料中擷取服務帳戶 ID。
如要產生洞察資料,請按照本文件「為 BigQuery 資料表產生洞察資料」一節的說明操作。
生成資料表和資料欄說明
產生資料洞察時,Gemini in BigQuery 會自動產生資料表和欄說明。您可以視需要編輯這些說明,然後儲存至資料表的 metadata。系統會使用儲存的說明生成未來的洞察資訊。
控制生成語言
你可以引導 Gemini 以特定語言生成資料表和資料欄說明。如要這麼做,請在產生資料洞察前,先在資料表的現有說明中加入簡短指令 (例如「使用法文產生資料表和資料欄說明」)。
生成洞察資料時,Gemini 會解讀這項指令,並以要求的語言產生中繼資料。這項機制之所以有效,是因為 Gemini 在生成新的資料表說明時,會使用現有的資料表說明做為脈絡資訊。
如需支援的語言清單,請參閱「Gemini 支援的語言」。
生成說明
如要產生資料表和資料欄說明,請按照下列步驟操作:
請按照本文件相關章節的指示,產生洞察資料:
按一下「結構定義」分頁標籤。
按一下「查看資料欄說明」。
系統會顯示生成的資料表和資料欄說明。
如要編輯及儲存系統產生的表格說明,請按照下列步驟操作:
在「資料表說明」部分,按一下「儲存至詳細資料」。
如要以系統產生的說明取代目前的說明,請按一下「複製建議的說明」。
視需要編輯表格說明,然後按一下「儲存至詳細資料」。
系統會立即更新資料表說明。
如要編輯及儲存產生的資料欄說明,請按照下列步驟操作:
在「資料欄說明」部分,按一下「儲存至結構定義」。
系統會將生成的資料欄說明填入每個資料欄的「新說明」欄位。
視需要編輯欄說明,然後按一下「儲存」。
系統會立即更新資料欄說明。
如要關閉預覽面板,請按一下「關閉」。
定價
如要瞭解這項功能的定價詳情,請參閱 Gemini in BigQuery 定價總覽。
配額與限制
如要瞭解這項功能的配額和限制,請參閱「Gemini in BigQuery 的配額」。
限制
- 資料洞察功能適用於 BigQuery 資料表、BigLake 資料表、外部資料表和檢視區塊。
- 多雲端客戶無法使用其他雲端的資料。
- 資料洞察不支援
Geo或JSON欄類型。 - 深入分析執行作業不保證每次都會顯示查詢。如要提高生成更吸引人查詢的機率,請重新啟動洞察管道。
- 如果資料表設有資料欄層級存取權控管 (ACL),且使用者權限受到限制,只要您擁有資料表所有資料欄的讀取權,就能產生洞察資料。如要執行產生的查詢,您必須具備充足的權限。
- 系統最多會為資料表中的 350 個資料欄產生說明。
位置
您可以在所有 BigQuery 位置使用資料洞察。 Gemini in BigQuery 的服務範圍遍及全球,因此您無法將資料處理作業限制在特定區域。如要進一步瞭解 Gemini in BigQuery 處理資料的位置,請參閱「Gemini 服務位置」。
後續步驟
- 進一步瞭解 Dataplex Universal Catalog 資料剖析功能。
- 瞭解如何在 BigQuery 中透過 Gemini 輔助功能撰寫查詢。
- 進一步瞭解 Gemini in BigQuery。
- 瞭解如何使用資料畫布,以自然語言問題疊代查詢結果。