什麼是資料湖倉(Lakehouse)?

企業過去多半把資料存放在 資料湖(Data Lake)資料倉(Data Warehouse)

近年來,資料湖倉(Lakehouse)已成為一種熱門選擇。它不僅成本效益高,也能高效管理與分析大量資料。湖倉中的資料來源多元:既可能來自營運系統(像是資料庫或企業資源規劃 ERP 系統,例如 SAP),也可能是即時產生的資料,能透過串流方式直接導入湖倉。

資料倉是什麼?

資料倉是一種高度整合、經過優化的資料存放與分析方式,主要用於關聯型資料。

相比資料湖,資料倉通常能提供更高品質的服務,但成本也更高。此外,資料倉的架構會帶來一些額外複雜性,例如需要透過擷取、轉換、載入的流程(ETL)把資料從資料湖移入資料倉,這也可能造成資料的可用性延遲。

資料湖倉跟資料湖是一樣的嗎?

兩者有相似之處。

資料湖就像一個大型水庫,可以存放各種結構化或非結構化資料,規模不受限制。而資料湖倉則在此基礎上加強了功能,它提供了元資料管理層,帶來資料管理工具與功能,並具備類似資料倉的能力。

為什麼需要資料湖倉

資料湖倉能帶來多項優勢:

  • 提供像資料湖一樣成本效益高、可擴展的資料存儲
  • 擁有資料倉的交易一致性、低延遲查詢以及精細化存取控制
  • 支援多種資料型態,包括結構化、半結構化和非結構化資料
  • 互動式查詢回應速度快
  • 不再需要在資料湖與資料倉之間維護獨立的 ETL 流程
  • 能夠從其他系統或即時資料串流匯入資料,輔助資料探索、準備與優化

資料湖倉之所以能提供這些優勢,是因為它採用了優化的開放表格格式和開源標準,既能實現高效能分析,又保留資料湖般開放的架構。難怪越來越多企業選擇使用資料湖倉。

資料匯入方法

將資料導入資料湖主要有兩種方式:

以下方法為傳統資料湖常用的匯入方式,資料湖倉也可直接利用批次或即時資料進行分析。

(一)批次 ETL

透過擷取、轉換、載入(ETL)的流程,先從來源系統抓取資料,再依需求進行轉換,最後批次載入資料湖。這種方式適合處理來自核心系統的大量營運資料。

(二)即時資料捕捉(CDC)

另一種方式是透過變更資料捕捉(CDC)技術,即時監控資料變動,將最新資料持續導入資料湖。即時資料來源多元,例如透過 Kafka 等訊息總線傳送的物聯網(IoT)感測器資料或其他串流資料。

對於串流資料來源,資料會持續地直接匯入資料湖,這稱為串流資料匯入。即時匯入能讓企業及時分析快速變化的資料,與批次 ETL 處理的營運資料互為補充。資料一旦進入資料湖倉後,就可以進行分析,挖掘出有價值的洞察。

分析流程

分析工作通常包含以下步驟:

  1. 資料探索:了解資料的品質、語意、結構等特性
  2. 資料準備:進行資料清理、篩選、正規化以及去重
  3. 資料優化:將資料轉換成適合高效分析的格式,例如欄式存儲或分析型資料表結構
  4. 批次分析:對優化後的資料進行查詢或模型運算
  5. 自動報告:將分析結果打包成排程報告,提供給使用者

資料湖雖然在大規模資料的成本效益存儲上表現出色,但對於某些進階分析需求仍有侷限,例如需要低延遲的即時儀表板互動查詢、連續資料匯入的交易一致性保障,或精細化的資料存取控制以符合法規與安全需求。

資料湖倉則能解決這些問題,將資料倉與資料湖的優點整合到單一、開放的架構中。作為一個統一的一站式解決方案,它兼具資料湖的成本效益與可擴展存儲能力,以及資料倉的高級分析功能和服務品質。

總結

總結來說,資料湖倉結合了資料湖與資料倉的優點,不僅能提供成本效益高、可擴展的資料存儲,還具備高級分析能力、低延遲查詢以及精細化存取控制。

它支援多種資料型態,能處理批次與即時資料流,並簡化資料整合流程,讓企業能更快速、靈活地探索、準備與分析資料。對希望同時兼顧效率與品質的企業而言,資料湖倉是一個完整、一站式的解決方案。

本文翻譯自:Unleashing AI with PostgreSQL: What is a Lakehouse?

想了解更多資訊,歡迎聯絡我們,或是加入歐立威 Line 好友!

Related Posts