- BigQuery 教程
- BigQuery - 首頁
- BigQuery - 概述
- BigQuery - 初始設定
- BigQuery 與本地 SQL 引擎的比較
- BigQuery - Google Cloud Console
- BigQuery - Google Cloud 層次結構
- 什麼是 Dremel?
- 什麼是 BigQuery Studio?
- BigQuery - 資料集
- BigQuery - 表
- BigQuery - 檢視
- BigQuery - 建立表
- BigQuery - 基本模式設計
- BigQuery - 修改表
- BigQuery - 複製表
- 刪除和恢復表
- BigQuery - 填充表
- 標準 SQL 與傳統 SQL
- BigQuery - 編寫第一個查詢
- BigQuery - CRUD 操作
- 分割槽和聚類
- BigQuery - 資料型別
- BigQuery - 複雜資料型別
- BigQuery - STRUCT 資料型別
- BigQuery - ARRAY 資料型別
- BigQuery - JSON 資料型別
- BigQuery - 表元資料
- BigQuery - 使用者定義函式
- 連線到外部資料來源
- 整合計劃查詢
- 整合 BigQuery API
- BigQuery - 整合 Airflow
- 整合連線的表格
- 整合資料傳輸
- BigQuery - 物化檢視
- BigQuery - 角色和許可權
- BigQuery - 查詢最佳化
- BigQuery - BI 引擎
- 監控使用情況和效能
- BigQuery - 資料倉庫
- 挑戰和最佳實踐
- BigQuery 資源
- BigQuery - 快速指南
- BigQuery - 資源
- BigQuery - 討論
BigQuery - 物化檢視
除了建立表和檢視外,BigQuery 還方便建立物化檢視。
什麼是物化檢視?
物化檢視類似於表,因為它也是資料的“快照”。但是,物化檢視的不同之處在於,真正的物化檢視會動態更新,而無需執行查詢。
物化檢視的型別
廣義上講,有兩種物化檢視:
- 已儲存為表並會定期從外部來源更新的檢視。
- 在 BigQuery Studio 中建立的“真正”物化檢視。
以下是第一種檢視的示例架構:
- SQL 查詢現有檢視
- 在 Python 指令碼中,該檢視被轉換為資料幀
- 資料幀上傳到 BigQuery
- 物化檢視被追加或覆蓋
由於上述方法是一個多步驟過程,BigQuery 簡化了物化檢視的建立和維護。
建立 BigQuery 物化檢視
使用者可以透過執行 **CREATE MATERIALIZED VIEW** SQL 語句來建立 BigQuery 物化檢視,後跟:
- 專案
- 資料集
- 新的物化檢視名稱
- SQL 語句
示例
這是一個示例,其中一個包含假設銷售資料的現有表被物化:
請注意 BigQuery 文件中列出的以下 **限制**:
- 每個表在一個數據集內最多可包含 20 個物化檢視
- 一個專案中最多隻能有 100 個物化檢視
- 一個組織中最多隻能有 500 個物化檢視
在 BigQuery 中編寫簡單的 SQL 指令碼
現在將所有內容整合在一起,是時候編寫一個簡單的指令碼,該指令碼將:
- 使用動態變數
- 刪除昨天的資料
- 將新資料插入表中
- 使用查詢選擇/載入資料
到目前為止,尚未介紹如何在 SQL 指令碼中定義和使用變數。
在 BigQuery 中,**變數語法**如下:
DECLARE variable_name TYPE DEFAULT function used to create dynamic variable
例如:
DECLARE yesterday DATE DEFAULT DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)
我們將以此開始以下指令碼,該指令碼將刪除奧斯汀共享單車分割槽表中的先前資料,並且只插入最新資料。
在 BigQuery 中執行此指令碼時,由於分號的存在,SQL 引擎將分階段執行它。可以透過單擊“檢視結果”來檢視最終結果。
單擊 **“檢視結果”** 將生成此輸出。
最後,我們可以看到新增到表中的新行。
廣告