透過 LookML 使用快取和資料群組功能

实验 10 分钟 universal_currency_alt 免费 show_chart 中级
info 此实验可能会提供 AI 工具来支持您学习。
此内容尚未针对移动设备进行优化。
为获得最佳体验,请在桌面设备上访问通过电子邮件发送的链接。

GSP893

Google Cloud 自學實驗室標誌

總覽

Looker 是 Google Cloud 的現代化資料平台,提供互動式分析功能,並可用圖表呈現資料。您能使用 Looker 深入分析資料、整合各種資料來源的洞察資訊、設定可做為行動依據的資料導向工作流程,以及建立自訂資料應用程式。

Looker 會持續生成 SQL 查詢並傳送至連線的資料庫。每當有人在 Looker 執行查詢,系統會快取 SQL 結果並儲存在 Looker 執行個體的加密檔案中。

快取功能會使用先前執行查詢時儲存的結果,避免對資料庫重複執行相同查詢。這有助於減輕資料庫負載,也可最佳化 Looker 的效能。在本實驗室中,您將瞭解 Looker 的快取機制,以及如何使用 LookML 資料群組定義快取政策。

學習內容

  • 在 LookML 中定義快取和不同的 datagroup 物件
  • 將資料群組套用至 LookML 模型中的個別探索

設定和需求

瞭解以下事項後,再點選「Start Lab」按鈕

請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。

您將在真正的雲端環境中完成實作實驗室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。

如要完成這個研究室活動,請先確認:

  • 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意:請使用無痕模式或私密瀏覽視窗執行本實驗室,這可以防止個人帳戶和學生帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成實驗室活動了!別忘了,活動一開始將無法暫停。
注意:如果您擁有個人 Google Cloud 帳戶或專案,請勿用於本實驗室,以免產生額外費用。

如何開始實驗室及登入 Looker

  1. 準備就緒後,請點選「Start Lab」

    「Lab Details」窗格會顯示本實驗室中必須使用的暫時憑證。

    如果實驗室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。

    請在「Lab Details」窗格查看實驗室憑證,您之後會使用此憑證登入實驗室的 Looker 執行個體。

    注意:如果使用其他憑證,系統會顯示錯誤訊息或產生費用
  2. 點選「Open Looker」

  3. 分別在「Email」和「Password」欄位,輸入提供的使用者名稱和密碼。

    使用者名稱:

    {{{looker.developer_username | Username}}}

    密碼:

    {{{looker.developer_password | Password}}} 重要事項:請務必使用本頁面「Lab Details」窗格中提供的憑證,而非 Google Cloud Skills Boost 的憑證。請勿在本實驗室中使用個人的 Looker 帳戶。
  4. 點選「Log In」

    成功登入後,您就會在本實驗室看到 Looker 執行個體。

Looker 的快取運作機制

Looker 就像資料庫的正門門衛。使用者執行查詢時,Looker 會判斷是否曾執行過完全相同的查詢。如果不曾,則允許查詢在資料庫中執行。傳回結果後,Looker 會快取結果供日後參考。

如果先前「曾」執行過相同查詢,Looker 會檢查快取政策,判斷結果是否仍然有效。如果有效,Looker 會將快取結果傳回給商業用戶。此程序不到一秒即可完成。

如果先前曾執行過相同查詢,但結果已根據快取政策而失效,Looker 會將查詢傳送至資料庫,接著快取新結果供日後參考。

資料群組

「資料群組」是 Looker 用來指稱具名快取政策或規則的詞彙。LookML 開發人員會使用資料群組,在 Looker 執行個體上管理快取。不同的快取政策需要個別定義資料群組。您需要建立的資料群組數量和類型,取決於資料的擷取、轉換和載入 (ETL) 程序,以及業務需求。

舉例來說,視資料更新頻率而定,您可能需要在模型層級、個別探索或永久衍生資料表 (PDT) 中定義資料群組。

  • 如要將資料群組設為所有探索的預設群組,請在模型層級使用 persist_with 參數。
  • 如要將資料群組套用至特定探索,請在該探索的定義中使用 persist_with 參數。
  • 如要將資料群組套用至模型中的特定探索,而非所有探索,請在每個探索的定義中使用 persist_with 參數,並指定相同的資料群組名稱。

可使用資料群組的物件

persist_with

如果您在模型層級套用資料群組,Looker 預設會將相同的快取規則套用至該模型中的所有探索。

不過,您可以在「個別探索」中套用資料群組,覆寫模型層級的任何設定。由於探索是所有內容的基礎,因此相同的快取邏輯也適用於探索中的 Look 圖表和資訊主頁。

注意:如果資料庫連線在 Looker 中設定為使用動態使用者名稱,您就無法將資料群組用於使用該連線的模型。請改用 persist_for 參數,針對探索查詢快取一段固定時間,並使用 sql_trigger_valuepersist_for 建立永久衍生資料表。

datagroup_trigger

關於 PDT,您可以套用資料群組來指定如何重建 PDT。

排程

您也可以在資料群組中執行 Look 圖表和資訊主頁的排程。只要指示 Looker 在快取政策到期時自動執行 Look 圖表或資訊主頁,系統就會擷取新資料並「預先快取」,供有需要的商業用戶使用。

資料群組設定

資料群組會採用兩個參數:max_cache_agesql_trigger

  • max_cache_age 可指定快取結果的保留時數,例如 24 小時。
  • sql_trigger 可用於編寫 SELECT 陳述式,告知 Looker 結果是否已變更。sql_trigger 應編寫為只傳回一個值。Looker 會定期將這個陳述式傳送至連線的資料庫。若結果有變更,Looker 會重新整理快取。

雖然只需要一個參數,但最好同時使用兩個參數,以便達到預期的快取結果。舉例來說,如果 sql_trigger 檢查未偵測到變更,可能表示 ETL 程序或 sql_trigger 本身發生錯誤。如果加入 max_cache_age 參數,無論 sql_trigger 檢查結果為何,快取都會在設定的時間長度後重新整理。

注意:這些參數只需提供一個,但建議兩個一併提供。

工作 1:將資料群組套用至「探索」

請在 LookML 模型中,為個別探索定義及套用資料群組。具體來說,您要更新「訂購商品」探索中所有檢視表的快取,每當新增 order_item_id 時就重新整理,因為 order_item_id 是「訂購商品」的主鍵。

開啟模型

  1. 按一下切換鈕進入「開發模式」

  2. 在「開發」分頁中,選取 qwiklabs-ecommerce LookML 專案。

  3. 開啟 training_ecommerce.model 檔案。

顯示 training_ecommerce.model 檔案的檔案瀏覽器頁面

請注意,這個模型檔案的預設資料群組 max_cache_age 為 1 小時。每當您建立新的 LookML 專案,並讓 Looker 從資料庫結構定義產生模型時,Looker 會自動建立預設資料群組,名稱為模型名稱 (本例為 training_ecommerce) 後面加上 _default_datagroup

刪除並替換預設資料群組

由於這個預設資料群組目前是在「模型」層級定義,因此會套用至模型中定義的所有探索。您要將資料群組套用至探索,因此必須移除預設群組並進行相應更新。為完成新資料群組的定義,您需要提供兩個參數的值:sql_triggermax_cache_age

  1. 刪除預設資料群組和 persist_with 定義 (第 8 至 13 行)。

  2. 如要為特定探索 (例如「訂購商品」) 建立新的資料群組,請輸入下列程式碼:

datagroup: order_items_datagroup {}
  1. sql_trigger 部分輸入下列程式碼,藉此選取 order_item_id 的最大 ID:
sql_trigger: SELECT MAX(order_item_id) from order_items ;;
  1. 設定 max_cache_age,這麼做即使資料更新發生問題,快取仍會每小時持續重新整理。請輸入以下程式碼:
max_cache_age: "1 hour"

已更新最大快取存留時間的 training_ecommerce.model 檔案

套用資料群組

請注意,單獨設定資料群組不會有任何作用,您必須完成兩個步驟。定義資料群組後,您需要使用 persist_with 參數,將資料群組套用至物件。

  1. 如要將資料群組套用至「訂購商品」探索的定義,請在 explore: order_items 行下方直接輸入下列程式碼:
persist_with: order_items_datagroup

在 training_ecommerce.model 檔案的「order_items」探索中加入 persist_with 程式碼

  1. 按一下「儲存變更」。

修訂變更並部署至正式環境

  1. 依序點按「驗證 LookML」>「修訂變更並推送」

  2. 新增修訂版本訊息,然後點按「修訂」

  3. 最後,點按「部署至正式環境」

太好了!您剛才定義了自己的快取政策 (資料群組),每當新增訂單編號時就會更新。您也將快取時間上限的參數設為 1 小時,因此無論資料是否更新,快取都會每小時重新整理。接著您將這個資料群組套用至個別的「訂購商品」探索,而非整個模型。

點選「Check my progress」,確認目標已達成。 將資料群組套用至「探索」

恭喜!

在本實驗室中,您瞭解了如何在 Looker 中定義及使用快取,以及如何使用 LookML 資料群組定義快取政策。

後續步驟/瞭解詳情

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2025 年 4 月 24 日

實驗室上次測試日期:2025 年 4 月 24 日

Copyright 2025 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。