什麼是獎章架構?

獎章架構是一種資料設計模式,用於整理資料湖泊湖倉中的資料。主要工作是提升資料品質和結構,確保資料在不同階段都能順利傳輸。這個框架會將資料分成多個層級,而非堆成一團。每層資料都可增加價值,讓資料更可靠,且更容易用於業務決策。

這是一種邏輯框架,而非特定的軟體。這項架構的設計宗旨是協助團隊管理資料管道,同時確保支援 ACID (完整性、一致性、隔離、耐用性) 交易。透過這些驗證層級傳輸資料,即使處理大量原始資訊,公司也能確保資訊準確且安全。

獎章架構與傳統資料倉儲的比較

過去,傳統資料倉儲採用「寫入時執行結構定義」做法,這表示您必須先完美定義資料結構,才能儲存資料。雖然這種做法能維持資料井然有序,但通常速度緩慢且缺乏彈性。如果資料格式稍有變動,整個系統可能會停止運作,直到工程師手動修正為止。

獎章架構遵循現代湖倉模式,在原始資料層採用「讀取時執行結構定義」。這樣資料就能立即以原始形式儲存。您只需在資料的商業價值變得明確時,再考慮其結構。這種做法更具彈性,公司可以先收集資料,再決定如何使用。

獎章架構的三個階層

在獎章架構中,資料會像河流一樣流經三個主要階段:銅級、銀級和金級。資料在各階段間流動時,會變得更乾淨且更有條理。這種設定讓工程師能夠及早修正錯誤,並為不同的使用者提供適合特定工作的資料版本。

銅層是所有傳入資料的登陸區。您可以在這裡儲存來自網路 API、IoT 感應器或交易資料庫等來源的原始未處理資訊。您不會在這裡變更資料,而是保留原始格式,例如 JSON、CSV 或 Parquet。

工程師通常會在這些檔案中加入時間戳記,顯示檔案抵達時間。銅層可做為永久歷史資料封存區。如果日後計算時發生錯誤,隨時可以返回原始資料重新開始。確保您永遠不會失去業務營運的「基準真相」。

您可以將銀級層視為「事實來源」,在這個階段,銅層的資料會經過徹底清理。工程師會使用工具篩除垃圾資料、移除重複記錄,並補正遺漏值。他們也會將格式標準化,例如確保所有日期都遵循相同的模式。

銀層會彙整不同資料集,清楚呈現「顧客」或「產品」等核心業務項目。這個資料層非常適合自助分析。其乾淨程度足以供大多數人使用,但同時也保留了足夠的細節,能回答各式各樣的問題,而不會受限於單一特定報表。

金層包含最精煉的資料,這類資訊是根據特定業務需求量身打造,例如每月銷售報表或預測顧客流失的機器學習模型。金層通常不會使用原始清單,而是採用「星形結構定義」或針對快速讀取進行最佳化的資料表。

由於這些資料已匯總且計算完畢,因此在資訊主頁中載入速度非常快。資料科學家可使用金層資料表查看「各區域的每日活躍使用者」,不必自行彙整數百萬筆原始資料列。這是專為公司提供即時價值而設計的最終產品。

獎章架構的三個階層

獎章架構的主要優點

採用分層做法可協助團隊加快行動速度,並降低犯下昂貴錯誤的風險。它為資料處理方式提供了清晰的藍圖,因此隨著公司成長,整個系統的管理作業也會變得更輕鬆。

逐步提升資料品質

將資料管道分成不同步驟,可大幅簡化偵錯作業。如果資訊主頁顯示的數字有誤,工程師可以先檢查銀層。如果銀層資料正確,他們就知道錯誤出在金層轉換邏輯。這種隔離機制可協助團隊在幾分鐘內找出並修正錯誤,而不需費時數小時,同時確保資料流程穩定可靠。

時間回溯與可重現性

機構只要在銅層保留完整歷程記錄,就能隨時重新執行整個資料處理程序。如果業務規則有變動,這項功能便可派上用場。舉例來說,如果財務團隊變更「利潤」的計算方式,您可以重新處理所有舊資料,以符合新規則。這種「時光旅行」做法也有助於稽核,因為您可以證明過去任何時間點的資料樣貌。

開放資料存取權

公司內不同人員需要不同類型的資料。資料科學家通常需要銅層的原始資料,用來訓練複雜的 AI 模型。同時,業務分析師只想要金層中乾淨且處理完成的資料,以便製作圖表。獎章架構讓每個人都能存取所需的特定資料層,而不會互相干擾。

如何實行獎章架構

如要建構這類架構,必須擬定明確的計畫,以將資料在儲存空間和運算工具之間移動。您可以按照下列四個步驟,建立可靠的資料處理管道。

步驟 1:將資料擷取至銅層

首先,設定自動化管道,將資料從來源移至可擴充的儲存空間。您可以使用 Dataflow 等工具處理即時資料或批次載入資料,以進行每日更新。目標是將資料 dump 至「bucket」而不變更資料。確保轉移過程中不會遺失或意外變更任何資訊。

首先,設定自動化管道,將資料從來源移至可擴充的儲存空間。您可以使用 Dataflow 等工具處理即時資料或批次載入資料,以進行每日更新。目標是將資料 dump 至「bucket」而不變更資料。確保轉移過程中不會遺失或意外變更任何資訊。

步驟 2:轉換至銀層

接著使用 Apache Spark 或 SQL 等處理引擎,清理原始銅區資料。在這個步驟中,您會套用資料品質規則。您可以將所有時間戳記轉換為標準時區 (例如 UTC),或從使用者清單中移除測試帳戶。許多團隊會將這些結果寫入 Delta Lake 或 Apache Iceberg 等開放資料表格式,方便整理及搜尋資料。

接著使用 Apache Spark 或 SQL 等處理引擎,清理原始銅區資料。在這個步驟中,您會套用資料品質規則。您可以將所有時間戳記轉換為標準時區 (例如 UTC),或從使用者清單中移除測試帳戶。許多團隊會將這些結果寫入 Delta Lake 或 Apache Iceberg 等開放資料表格式,方便整理及搜尋資料。

步驟 3:將資料匯總至金層

銀層中的資料清理完畢後,您就可以建立專門的 SQL 查詢來建構金層資料表。這些查詢會彙整不同資料表來建立特定指標,例如「各類別營收」。這些資料通常會儲存在高效能檢視畫面中,可直接插入 Looker 等圖表工具。

銀層中的資料清理完畢後,您就可以建立專門的 SQL 查詢來建構金層資料表。這些查詢會彙整不同資料表來建立特定指標,例如「各類別營收」。這些資料通常會儲存在高效能檢視畫面中,可直接插入 Looker 等圖表工具。

步驟 4:自動化調度管理與治理

最後,您需要排定這些步驟的執行時間,讓系統自動完成。Google Cloud Managed Service for Apache Airflow 等工具可管理工作執行時間。此外,您也應套用嚴格的安全性政策。舉例來說,您可以允許所有人讀取金層,但只有少數經過授權的服務帳戶可以寫入或變更銀層和金層的資料。

最後,您需要排定這些步驟的執行時間,讓系統自動完成。Google Cloud Managed Service for Apache Airflow 等工具可管理工作執行時間。此外,您也應套用嚴格的安全性政策。舉例來說,您可以允許所有人讀取金層,但只有少數經過授權的服務帳戶可以寫入或變更銀層和金層的資料。

透過 Google Cloud 解決業務難題

新客戶可以獲得價值 $300 美元的免費抵免額,盡情試用各項 Google Cloud 功能。
與 Google Cloud 銷售專員聯絡,深入探討您面臨的特殊難題。

準備好將資料轉化為可靠的業務資產了嗎?

立即使用 BigQuery 建立分層架構。

Google Cloud