BigQuery 數據分析總覽

本文件說明 BigQuery 如何處理查詢,並概略介紹幾項有助於瞭解及分析資料的功能。

BigQuery 經過最佳化調整,可在幾秒內執行數 TB 資料的分析式查詢,以及在數分鐘內執行數 PB 資料的查詢。瞭解這項服務的功能和處理查詢的方式,有助您充分發揮資料分析投資的效益。

如要在 Google Cloud 控制台中直接瞭解 BigQuery 的資料分析功能,請按一下「開始導覽」

觀看導覽

分析工作流程

BigQuery 支援多種資料分析工作流程:

  • 臨時分析。BigQuery 會使用 GoogleSQL (BigQuery 中的 SQL 方言) 支援專案分析。您可以在 Google Cloud 控制台中執行查詢,也可以透過與 BigQuery 整合的第三方工具執行查詢。

  • 地理空間分析。BigQuery 會使用地理資料類型和 GoogleSQL 地理函式,讓您分析及視覺化地理空間資料。如要瞭解這些資料類型和函式,請參閱地理空間分析簡介

  • 搜尋資料:您可以為資料建立索引,在非結構化文字或半結構化 JSON 資料上執行靈活且經過最佳化的搜尋

  • 搜尋 Google Cloud 資源。使用自然語言搜尋 (預先發布) 在 BigQuery 中探索 Google Cloud 資源。

  • 機器學習。BigQuery ML 會使用 GoogleSQL 查詢,讓您在 BigQuery 中建立及執行機器學習 (ML) 模型。

  • 商業智慧BigQuery BI Engine 是速度飛快的記憶體內分析服務,可讓您建構豐富的互動式資訊主頁和報表,且不會影響效能、規模、安全性或資料更新間隔。

  • AI 輔助功能。您可以使用 Gemini in BigQuery 準備及探索資料、產生 SQL 查詢和 Python 程式碼,並以視覺化方式呈現結果。

資料探索

在開始編寫 SQL 查詢之前,您可以先透過 BigQuery 瞭解資料。如果您不熟悉自己的資料、不知道要問什麼問題,或需要編寫 SQL 的協助,請使用下列功能:

  • 資料表探索工具。透過視覺化方式探索表格中值的範圍和頻率,並以互動方式建立查詢。

  • 資料洞察。產生關於資料的自然語言問題,以及用來回答這些問題的 SQL 查詢。

  • 資料剖析掃描。查看資料的統計特性,包括平均值、不重複值、最大值和最小值。

  • 資料畫布。使用自然語言查詢資料、以圖表呈現結果,並提出後續問題。

查詢

在 BigQuery 中分析資料的主要方式是執行 SQL 查詢GoogleSQL 方言支援 SQL:2011,並包含支援地理空間分析和機器學習的擴充功能。

資料來源

BigQuery 可讓您查詢下列類型的資料來源:

  • 儲存在 BigQuery 中的資料。您可以將資料載入 BigQuery,使用資料操控語言 (DML) 陳述式修改現有資料,或將查詢結果寫入資料表。您可以從時間回溯期內的某個時間點查詢歷史資料

    您可以查詢儲存在單一地區或多地區位置的資料,但無法針對多個位置執行查詢,即使其中一個位置是單一地區位置,另一個位置是包含該單一地區位置的多地區位置,也一樣。詳情請參閱「位置、預留作業和工作」。

  • 外部資料。您可以查詢各種外部資料來源,例如 Cloud Storage,或是 Spanner 或 Cloud SQL 等資料庫服務。如要瞭解如何設定外部來源連線,請參閱外部資料來源簡介

  • 多雲端資料。您可以查詢儲存在其他公有雲端 (例如 AWS 或 Azure) 中的資料。如要瞭解如何設定與 Amazon Simple Storage Service (Amazon S3) 或 Azure Blob 儲存體的連線,請參閱「BigQuery Omni 簡介」。

  • 公開資料集。您可以分析公開資料集市集中的任何資料集。

  • BigQuery sharing (原為 Analytics Hub)。您可以發布及訂閱 BigQuery 資料集和 Pub/Sub 主題,跨機構分享資料。詳情請參閱「BigQuery 共用功能簡介」。

查詢作業的類型

您可以使用下列任一查詢工作類型查詢 BigQuery 資料

  • 互動式查詢工作。根據預設,BigQuery 會以互動式查詢工作執行查詢,這類工作旨在盡快開始執行。

  • 批次查詢工作。批次查詢的優先順序低於互動式查詢。如果專案或預留作業使用了所有可用的運算資源,批次查詢就更有可能排入佇列並保留在佇列中。批次查詢開始執行後,其運作方式與互動式查詢相同。詳情請參閱「查詢佇列」。

  • 持續查詢工作 (預先發布版)。透過這些工作,查詢會持續執行,讓您能夠即時在 BigQuery 中分析傳入的資料,然後將結果寫入 BigQuery 資料表,或將結果匯出至 Bigtable 或 Pub/Sub。您可以使用這項功能執行時間敏感的工作,例如建立洞察並立即採取行動、套用即時機器學習 (ML) 推論,以及建構事件驅動資料管道。

您可以使用下列方法執行查詢工作:

已儲存及共用的查詢

BigQuery 可讓您儲存查詢,以及與他人共用查詢

當您儲存查詢時,能夠將查詢設定為不公開 (只有您可以檢視)、在專案層級共用 (特定管理員可以檢視),或是公開 (任何人都可以檢視)。詳情請參閱「使用已儲存的查詢」。

BigQuery 處理查詢的方式

BigQuery 執行查詢時會發生幾個程序:

  • 執行樹狀圖。執行查詢時,BigQuery 會產生執行樹狀結構,將查詢拆分為多個階段。這些階段包含可同時執行的步驟。

  • 隨機播放等級:各階段會透過快速的分散式重組層通訊,該層會儲存階段工作者產生的中繼資料。在可行情況下,排序層會利用 petabit 網路和 RAM 等技術,將資料快速移至 worker 節點。

  • 查詢計畫。當 BigQuery 取得執行查詢所需的所有資訊後,就會產生查詢計畫。您可以在 Google Cloud 控制台查看查詢計畫,並用於排解問題或提升查詢效能

  • 查詢執行圖。您可以查看任何查詢 (無論是執行中或已完成) 的查詢計畫資訊 (以圖形格式呈現),並查看效能洞察,協助您改善查詢。

  • 查詢監控和動態規劃。除了執行查詢計畫本身工作的 worker 之外,其他 worker 也會監控並引導整個系統的工作整體進度。隨著查詢的進度,BigQuery 可能會動態調整查詢計畫,以便配合各階段的結果。

  • 查詢結果。查詢完成後,BigQuery 會將結果寫入永久性儲存空間,並傳回給使用者。這項設計可讓 BigQuery 在下次執行查詢時提供快取結果

查詢並行數和效能

在相同資料上重複執行查詢時,查詢的效能可能會有所不同,原因是 BigQuery 環境的共用性質、使用快取的查詢結果,或是 BigQuery 在查詢執行期間動態調整查詢計畫。對於同時執行許多查詢的一般繁忙系統,BigQuery 會使用多個程序來平滑查詢效能的差異:

  • BigQuery 會並行執行多個查詢,並可排入查詢,以便在資源可用時執行。

  • 在查詢開始和結束時,BigQuery 會在新的查詢和執行中的查詢之間公平地重新分配資源。這項程序可確保查詢效能不依賴查詢提交順序,而是取決於在特定時間內執行的查詢數量。

查詢最佳化

執行查詢時,您可以在 Google Cloud 主控台中查看查詢計畫。您也可以使用 INFORMATION_SCHEMA.JOBS* 檢視畫面jobs.get REST API 方法,要求執行詳細資料。

查詢計畫包含查詢階段和步驟的詳細資料。這些詳細資料有助您找出改善查詢效能的方法。舉例來說,如果您發現某個階段寫入的輸出內容比其他階段多得多,可能表示您需要在查詢中更早進行篩選。

如要進一步瞭解查詢計畫和查詢最佳化,請參閱下列資源:

查詢監控

監控和記錄功能對於在雲端執行可靠的應用程式至關重要。BigQuery 工作負載也不例外,尤其是工作負載量大或攸關重大任務時。BigQuery 提供各種指標、記錄和中繼資料檢視畫面,協助您監控 BigQuery 用量。

詳情請參閱下列資源:

查詢定價

BigQuery 提供兩種用於分析的計價模式:

如要瞭解這兩種定價模式,以及如何為以容量計價的方案進行預訂,請參閱預訂簡介

控管配額和查詢費用

BigQuery 會針對查詢作業的執行,強制採用專案層級的配額。如需查詢配額的相關資訊,請參閱「配額與限制」。

為了控管查詢費用,BigQuery 提供了多種選項,包括自訂配額和帳單快訊。詳情請參閱建立自訂的費用控管機制

資料分析功能

BigQuery 支援描述性和預測性分析,並可透過 AI 技術輔助工具、SQL、機器學習、筆記本和其他第三方整合功能,協助您探索資料。

BigQuery Studio

BigQuery Studio 可讓您透過下列功能,探索、分析及執行 BigQuery 資料的推論:

BigQuery ML

BigQuery ML 可讓您在 BigQuery 中使用 SQL 執行機器學習 (ML) 和預測分析。詳情請參閱 BigQuery ML 簡介

整合分析工具

除了在 BigQuery 中執行查詢,您還可以使用各種與 BigQuery 整合的數據分析和商業智慧工具來分析資料,例如:

  • Looker。Looker 是集結商業智慧、資料應用程式和嵌入式數據分析服務的企業平台。Looker 平台支援許多資料儲存庫,包括 BigQuery。如要瞭解如何將 Looker 連結至 BigQuery,請參閱「使用 Looker」一文。

  • Looker Studio。執行查詢後,您可以直接在Google Cloud 控制台的 BigQuery 中啟動 Looker Studio。接著,您可以在 Looker Studio 中建立視覺化資料,並探索查詢傳回的資料。如要瞭解 Looker Studio,請參閱 Looker Studio 總覽

  • 連結試算表:您也可以在控制台中直接從 BigQuery 啟動連結試算表。除了您手動要求之外,「連結試算表」也可以根據預先排定的時間表,在 BigQuery 中代替您執行查詢。這些查詢的結果會儲存在試算表中,方便您分析及共用資料。如要瞭解連結試算表,請參閱「使用連結試算表」一文。

  • Tableau. 您可以從 Tableau 連結至資料集。使用 BigQuery 強化圖表、資訊主頁和其他資料視覺化功能。

第三方工具整合

多項第三方數據分析工具可與 BigQuery 搭配使用。舉例來說,您可以將 Tableau 連結至 BigQuery 資料,並使用圖表工具分析及分享分析結果。如要進一步瞭解使用第三方工具時的注意事項,請參閱「第三方工具整合」。

您可以使用 ODBC 和 JDBC 驅動程式,將應用程式與 BigQuery 整合。這些驅動程式旨在協助使用者透過現有工具和基礎架構,充分發揮 BigQuery 的強大功能。如需最新版本和已知問題的相關資訊,請參閱 適用於 BigQuery 的 ODBC 和 JDBC 驅動程式

pandas-gbq 等 pandas 程式庫可讓您在 Jupyter Notebook 中與 BigQuery 資料互動。如要瞭解這個程式庫,以及與使用 BigQuery Python 用戶端程式庫的比較,請參閱「pandas-gbq 的比較」。

您也可以將 BigQuery 與其他筆記本和分析工具搭配使用。詳情請參閱「程式輔助分析工具」。

如需 BigQuery 分析和其他技術合作夥伴的完整清單,請參閱 BigQuery 產品頁面上的「合作夥伴」清單。

後續步驟