Warehouse vs Lake · 儲存架構

資料倉儲 / 資料湖

整理好的圖書館 vs 什麼都收的倉庫

大量資料存哪?倉儲像整理好的圖書館(先編目),資料湖像大倉庫(先丟著)。
判斷關鍵是結構化程度與用途,現代趨勢是兩者兼具的 Lakehouse。

DW:Schema-on-Write | Lake:Schema-on-Read
01 — 白話直覺

資料倉儲 vs 資料湖:整理過的 vs 原始的

大量資料要存哪?兩種主流:資料倉儲(Warehouse)像「整理好的圖書館」——進去前先分類編目(Schema-on-Write);資料湖(Lake)像「大倉庫」——什麼都先丟進去,要用時才整理(Schema-on-Read)。

📚 資料倉儲 DW

存「結構化、清理好」的資料,寫入前先定好格式。查詢快、適合報表分析。例:BigQuery、Snowflake。

🏞️ 資料湖 Lake

什麼格式都收(圖片、影片、JSON、Log),便宜、有彈性,但用前要自己整理。例:S3、GCS。

現代趨勢是 Lakehouse:結合湖的彈性便宜 + 倉儲的查詢效能與管理,魚與熊掌兼得。

02 — 核心互動

哪種資料該放哪裡?

把資料拖去對的地方。點下面各種資料,看它適合放倉儲還是湖,以及為什麼。判斷關鍵:結構化程度用途

03 — 選擇

倉儲 / 湖 / 湖倉

優點

  • DW:查詢快、資料乾淨、適合 BI 報表
  • Lake:便宜、彈性、原始資料全保留
  • Lakehouse:兩者優點兼具

缺點 / 限制

  • DW:貴、僅限結構化、彈性低
  • Lake:易變『資料沼澤』(亂到沒人會用)
  • 選錯架構,成本或效能двое都吃虧

三種架構

📚
Warehouse
結構化、Schema-on-Write
🏞️
Lake
什麼都收、Schema-on-Read
🏠
Lakehouse
彈性+效能兼具
04 — 速記與對照

DB vs 倉儲 vs 資料湖

類型存什麼用途
資料庫(OLTP)即時交易、結構化日常交易讀寫
資料倉儲(OLAP)整理過的結構化分析、報表、BI
資料湖原始各種格式(含非結構)大數據、ML、彈性探索
湖倉 Lakehouse湖的彈性+倉的管理兼顧分析與 ML

自我檢測

資料庫、資料倉儲、資料湖差在哪?
DB 服務即時交易(OLTP);倉儲存整理過的結構化資料供分析(OLAP);資料湖存各式原始資料(含非結構)供大數據與 ML。
OLTP 和 OLAP 差在哪?
OLTP 是大量小交易、即時讀寫(下單);OLAP 是複雜查詢、彙總分析(報表),兩者設計取向不同。
為什麼分析常用欄式儲存?
分析多半只讀部分欄位並彙總;欄式儲存同欄連續、壓縮好、掃描快,比列式更適合 OLAP。

🎯 重點整理

  1. DB(OLTP)交易、倉儲(OLAP)分析、湖存原始。
  2. SQL 結構化強一致;NoSQL 彈性可擴展。
  3. 分析用欄式儲存,掃描與壓縮更快。
  4. Lakehouse 兼顧湖的彈性與倉的治理。
  5. 依讀寫型態與資料型式選儲存。

📝 iPAS 考點提醒

資料倉儲與資料湖是大數據儲存核心,iPAS 中級科目二考點。重點:倉儲(Data Warehouse)存已整理、結構化、供分析的資料(schema-on-write);資料湖(Data Lake)存多元、原始的大量資料(schema-on-read)。易混點:兩者用途不同、常並存(近年有 Lakehouse 融合);別把資料湖當成隨便丟資料的垃圾場(會變 data swamp)。情境:依需求選儲存架構。

想練情境題與詳解 → AI 學習與考證地圖

❓ 常見問題

資料庫、資料倉儲、資料湖差在哪?

資料庫(OLTP)處理即時交易;資料倉儲存整理過的結構化資料供分析(OLAP);資料湖存大量原始與各種格式資料、讀取時才定結構(schema-on-read)。

SQL 和 NoSQL 怎麼選?

結構固定、需強一致與交易用 SQL(關聯式);資料多變、需高擴展或非結構化用 NoSQL(文件、鍵值、欄式、圖)。

OLTP 和 OLAP 差在哪?

OLTP 重大量小型即時交易(寫多);OLAP 重複雜分析查詢與彙總(讀多、跨大量資料),設計目標不同。

為什麼分析常用欄式儲存?

分析多半只取少數欄、做彙總;欄式儲存(如 Parquet)只讀需要的欄、壓縮率高,大幅加速分析查詢。

資料儲存要考量什麼?

資料量與成長、查詢型態(交易 OLTP 或分析 OLAP)、一致性需求、擴展性、成本、備援與安全。

🧭 相關主題

← 返回 AI 學習與考證地圖