企業中常見名詞,Data Lake 和 Data Warehouses 的差別是什麼?|專家論點【朱騏】

圖片來源:freepik

延續 上一篇文章,我們來了解跟 Data Lake 非常像的名詞 – Data warehouses ( 資料倉儲 )。

這兩者都是新聞、企業書籍中常見的數據名詞,但到底有什麼差別呢?

兩者主要差異是

  • Data Warehouses: 適合存放結構化數據、經常性要使用的數據
  • Data Lake:適合存放非結構化數據、為特殊目的使用

更進一步來看,可以從下方 2 個點切入比較

  • 寫入的數據結構 vs 讀取的數據結構 ( Schema on write vs. Schema on read)
  • 經常性報告 vs 特殊專案 ( Regular reporting vs. Special projects)

寫入的數據結構 vs 讀取的數據結構

我們來看看「數據結構」上的差異。

Data Warehouses

  • 必須先定義數據結構 (Data schema)
  • 例如要追蹤使用者資訊,就必須先定義「哪些使用者的資料要寫到 Data Warehouses 的欄位中」。
  • 知名產品例如有 Snowflake, BigQuery

Data Lake

  • 不需先定義數據結構,可以將任意結構的數據丟進 Data Lake
  • 當需要讀取時,再定義「讀取」的數據結構
  • 多數的 Data Lake 都會使用 Object ( 物件) 格式進行儲存,把資料當成 1 個 Object 儲存

經常性報告 vs 特殊專案

接著從「使用情境」上作比較。

例如

  • 考量速度:想像在整理日報時,今天寫的 query 和昨天寫的 query 會有 90 % 相似,因此使用結構化數據會比較好。
  • 考量成本:如果是要為了特定專案(例如產品推薦系統),事前定義詳細結構反而會太花時間,因此可使用非結構化數據。

小結

你可能會好奇說:難道一定要 2 選 1 嗎?

答案是:不用,多數公司會選擇兩者併用。

重點是「如何有效率地同時使用這兩個工具」。

在 Saas 產業中,許多新創公司會先從 Data Warehouses 開始,接著再投資 Data Lake 來收集非結構化的資料。

以上就是企業中常見的 Data Lake 和 Data Warehouses 的解釋。

瀏覽 3,193 次

覺得不錯的話就分享出去吧!

發佈留言

Back to top button