在 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 Universal Catalog,請要求管理員在資源中授予您下列 IAM 角色:

如要啟用 API,請要求管理員授予下列 IAM 角色:

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

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。如要查看生成洞察資料所需的確切權限,請展開「Required permissions」(必要權限) 部分:

所需權限

  • bigquery.jobs.create
  • bigquery.tables.get
  • bigquery.tables.getData
  • dataplex.datascans.create
  • dataplex.datascans.get
  • dataplex.datascans.getData
  • dataplex.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.

Enable the APIs

如要進一步瞭解如何啟用 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。您必須具備發布權限。

使用「產生並發布」時,系統會執行下列動作:

  • 表格和欄位說明會儲存在 Dataplex Universal Catalog。
  • 系統會將建議的查詢和問題擷取為可重複使用的層面。
  • 發布的洞察資料會開放給所有具備適當 Dataplex Universal Catalog 存取權的使用者,確保組織知識得以共享。
  • 您可以在 Dataplex Universal Catalog 中直接編輯及儲存說明。
如果需要永久保存及重複使用企業資料文件,或是要建構以目錄為導向的控管工作流程,請使用這個模式。
生成但不發布 視需要建立洞察資料 (說明、自然語言問題和 SQL 查詢)。洞察資料不會發布至 Dataplex Universal Catalog。 使用這個模式進行快速的臨時探索,避免目錄雜亂。

改善產生的洞察資料的最佳做法

如要提高生成洞察資料的準確度,請遵循下列最佳做法:

根據資料剖析結果深入分析

在生成式 AI 領域,建立基準是指將模型輸出內容連結至可驗證的資訊來源。您可以根據資料剖析結果,生成洞察資訊。資料剖析功能會分析 BigQuery 資料表中的資料欄,找出常見的統計特徵,例如一般資料值和資料分布情形。為資料表建立資料剖析掃描作業時,您可以選擇將掃描結果發布至 Google Cloud 控制台的 BigQuery 和 Dataplex Universal Catalog 頁面。BigQuery 會使用資料剖析結果,透過下列方式建立更準確的相關查詢:

  1. 分析資料剖析結果,找出資料中值得關注的模式、趨勢或離群值。
  2. 生成查詢,著重於這些模式、趨勢或離群值,以發掘洞察資訊。
  3. 根據資料剖析結果驗證生成的查詢,確保查詢傳回有意義的結果。

如果沒有資料剖析掃描,會發生下列情況:

  • 生成的查詢較可能包含不準確的子句或產生無意義的結果。
  • 產生的資料欄說明僅根據資料欄名稱。

確認資料表的資料剖析掃描作業為最新狀態,且結果已發布至 BigQuery。

您可以調整資料剖析設定,增加取樣大小,並篩除列和欄。執行新的資料剖析掃描後,請重新產生洞察資料。

新增資料表說明

詳細說明資料表內容,有助於 Gemini in BigQuery 產生更相關的洞察資料。新增資料表說明後,重新產生洞察資料。

舉例來說,您可能會在 telco_churn 資料表中新增下列說明:「這個資料表會追蹤客戶流失資料,包括訂閱詳細資料、任期和服務用量,以預測客戶流失行為。」

如果儲存 Gemini 生成的資料表說明,系統就會使用該說明生成未來的洞察資料。

新增資料欄說明

說明每個資料欄的用途,或一個資料欄與另一個資料欄的關係,有助於提升洞察資料的品質。更新表格中的資料欄說明後,請重新產生洞察資料。

舉例來說,您可能會在 telco_churn 資料表的特定資料欄中新增下列說明:

  • Tenure:「顧客使用服務的月數」。
  • Churn:客戶是否已停止使用服務。TRUE 表示客戶不再使用該服務,FALSE 表示客戶仍在使用該服務。」

如果儲存 Gemini 生成的資料欄說明,系統就會使用這些說明生成日後的洞察資料。

產生 BigQuery 資料表的洞察資料

控制台

如要產生 BigQuery 資料表的洞察資訊,必須使用 BigQuery Studio 存取 BigQuery 中的資料表項目。

  1. 前往 Google Cloud 控制台的「BigQuery Studio」。

    前往 BigQuery Studio

  2. 點選左側窗格中的 「Explorer」

    醒目顯示的「Explorer」窗格按鈕。

    如果沒有看到左側窗格,請按一下「展開左側窗格」圖示 開啟窗格。

  3. 在「Explorer」窗格中,按一下「Datasets」,然後選取資料集。

  4. 依序按一下「總覽」>「表格」,然後選取要產生洞察資料的表格。

  5. 按一下「洞察」分頁標籤。如果分頁空白,表示系統尚未產生這個資料表的洞察資料。

  6. 如要產生洞察資料並發布至 Dataplex Universal Catalog,請按一下「產生並發布」(預覽)。

    如要產生洞察資料,但不發布至 Dataplex Universal Catalog,請按一下「Generate without publish」(產生但不發布)

    如要進一步瞭解「產生並發布」和「產生但不發布」模式之間的差異,請參閱「產生洞察資料的模式」。

  7. 選取要產生洞察資訊的區域,然後按一下「產生」

    洞察資料需要幾分鐘才會填入。

    如果資料表有已發布的資料剖析結果,系統會使用這些結果產生洞察資訊。否則,系統會依據資料欄名稱和說明產生洞察結果。

  8. 在「洞察」分頁中,查看系統生成的自然語言問題。

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

  10. 如要在 BigQuery 中開啟查詢,請按一下「複製到查詢」

  11. 如要提出後續問題,請按照下列步驟操作:

    1. 按一下「繼續提問」。查詢會在新的資料畫布中開啟。

    2. 按一下「執行」,然後按一下「查詢這些結果」

    3. 如要提出後續問題,請在「自然語言」提示欄位中輸入提示,或在查詢編輯器中編輯 SQL。

  12. 如要產生一組新的查詢,請按一下「產生洞察資料」,然後再次觸發管道。

為表格產生洞察資料後,只要使用者具備dataplex.datascans.getData權限並可存取表格,就能查看這些洞察資料。

REST

如要產生 BigQuery 資料表的洞察資料,請使用 Dataplex Universal Catalog DataScans API 支援的 DATA_DOCUMENTATION 掃描類型。這些掃描作業會產生中繼資料,包括用於資料探索的深入分析 SQL 查詢、結構定義說明和資料表層級摘要。

如要為 BigQuery 資料表產生資料洞察,請按照下列步驟操作:

  1. 選用:建立資料表的資料剖析掃描作業。這些掃描結果可做為 Gemini 的基礎,讓輸出內容以資料中的實際值為準,減少生成錯誤資訊和近似值。

    1. 使用 dataScans.create 方法建立資料剖析掃描作業。

    2. 使用 dataScans.run 方法執行資料剖析掃描。等待執行完成。

    3. 將下列資料剖析標籤附加至資料表,將掃描結果發布至 BigQuery 資料表:

      • dataplex-dp-published-scan:DATASCAN_ID
      • dataplex-dp-published-project:PROJECT_ID
      • dataplex-dp-published-location:LOCATION

      詳情請參閱「為資料表和檢視區塊新增標籤」。

  2. 為 BigQuery 資料表產生資料文件資料掃描:

    1. 使用 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
    2. 使用 dataScans.run 方法啟動資料文件掃描工作。

      例如:

      gcurl -X POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID:run
      

      這項要求會傳回專屬工作 ID 和初始狀態。

    3. 使用 dataScans.get 方法檢查掃描作業是否完成。

      使用工作 ID 擷取工作狀態。例如:

      gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID/jobs/JOB_ID
      

      狀態為 SUCCEEDEDFAILURE 時,即代表工作完成。

    4. 將下列資料文件標籤附加至資料表,即可將掃描結果發布至 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 資料表產生洞察資料,請按照下列步驟操作:

  1. 在專案中啟用 BigQuery Connection API。

    啟用 BigQuery Connection API

  2. 建立 BigQuery 連線。詳情請參閱「管理連線」。

  3. 將 Storage 物件檢視者 (roles/storage.objectViewer) IAM 角色授予您建立的 BigQuery 連線所對應的服務帳戶。

    您可以從連線詳細資料中擷取服務帳戶 ID。

  4. 如要產生洞察資料,請按照本文件「為 BigQuery 資料表產生洞察資料」一節的說明操作。

生成資料表和資料欄說明

產生資料洞察時,Gemini in BigQuery 會自動產生資料表和欄說明。您可以視需要編輯這些說明,然後儲存至資料表的 metadata。系統會使用儲存的說明生成未來的洞察資訊。

控制生成語言

你可以引導 Gemini 以特定語言生成資料表和資料欄說明。如要這麼做,請在產生資料洞察前,先在資料表的現有說明中加入簡短指令 (例如「使用法文產生資料表和資料欄說明」)。

生成洞察資料時,Gemini 會解讀這項指令,並以要求的語言產生中繼資料。這項機制之所以有效,是因為 Gemini 在生成新的資料表說明時,會使用現有的資料表說明做為脈絡資訊。

如需支援的語言清單,請參閱「Gemini 支援的語言」。

生成說明

如要產生資料表和資料欄說明,請按照下列步驟操作:

  1. 請按照本文件相關章節的指示,產生洞察資料:

  2. 按一下「結構定義」分頁標籤。

  3. 按一下「查看資料欄說明」

    系統會顯示生成的資料表和資料欄說明。

  4. 如要編輯及儲存系統產生的表格說明,請按照下列步驟操作:

    1. 在「資料表說明」部分,按一下「儲存至詳細資料」

    2. 如要以系統產生的說明取代目前的說明,請按一下「複製建議的說明」

    3. 視需要編輯表格說明,然後按一下「儲存至詳細資料」

      系統會立即更新資料表說明。

  5. 如要編輯及儲存產生的資料欄說明,請按照下列步驟操作:

    1. 在「資料欄說明」部分,按一下「儲存至結構定義」

      系統會將生成的資料欄說明填入每個資料欄的「新說明」欄位。

    2. 視需要編輯欄說明,然後按一下「儲存」

      系統會立即更新資料欄說明。

  6. 如要關閉預覽面板,請按一下「關閉」

定價

如要瞭解這項功能的定價詳情,請參閱 Gemini in BigQuery 定價總覽

配額與限制

如要瞭解這項功能的配額和限制,請參閱「Gemini in BigQuery 的配額」。

限制

  • 資料洞察功能適用於 BigQuery 資料表、BigLake 資料表、外部資料表和檢視區塊。
  • 多雲端客戶無法使用其他雲端的資料。
  • 資料洞察不支援 GeoJSON 欄類型。
  • 深入分析執行作業不保證每次都會顯示查詢。如要提高生成更吸引人查詢的機率,請重新啟動洞察管道。
  • 如果資料表設有資料欄層級存取權控管 (ACL),且使用者權限受到限制,只要您擁有資料表所有資料欄的讀取權,就能產生洞察資料。如要執行產生的查詢,您必須具備充足的權限
  • 系統最多會為資料表中的 350 個資料欄產生說明。

位置

您可以在所有 BigQuery 位置使用資料洞察。 Gemini in BigQuery 的服務範圍遍及全球,因此您無法將資料處理作業限制在特定區域。如要進一步瞭解 Gemini in BigQuery 處理資料的位置,請參閱「Gemini 服務位置」。

後續步驟