Data Lake 是什麼?企業需要建置 Data Lake 的3個原因有這些|專家論點【朱騏】

圖片來源:freepik

在軟體公司工作,如果你的公司有數據團隊,或多或少都會聽過 Data Lake(資料湖)這個名詞。

但 Data Lake 是什麼呢?這篇文章打算用深入淺出的方式說明。

Data Lake 的定義

Data Lake 是無結構化存放數據的地方 ( unstructured place to put data )。

主要是為了

  • 長期儲存數據 ( long term storage)
  • 不定時的查詢數據 ( infrequent querying)

為什麼需要 Data Lake?

為什麼企業需要建置 Data Lake 呢?主要有 3 個原因

  • 企業正在收集比以前還要多的數據,但不會都立刻使用到
  • 用來長期存放數據,但不需特別定義 Schema(數據結構)
  • 閱讀數據的人更容易理解(這是跟 Data Warehouses (資料倉儲)相比,因 Data Warehouses 需要事先定義)

企業內的數據種類

先來了解公司會儲存什麼樣的數據。主要有 2 種

  • structured operational data(結構化的營運數據):類似一張 Excel 資料表
  • Unstructured data(非結構化數據):想像一個 Key-Value paired(鍵值配對)的資料,例如「姓名:朱騏,職業:Technical Writer」

前者的範例有

  • Users(例如登入的使用者)& Organizations(註冊的公司)
  • 產品銷售數據、訂單數量
  • Saas app 數據(例如 DAU, MAU)
  • 產品的發票或付款數據(例如金額、支付方式)特色是有定義好的 Schema 儲存資料。

後者的範例有

  • 文字數據(例如 Twitter 使用者的 Tweet)
  • Server 或 Application 的效能數據(例如 System Log)
  • 網站點擊數、瀏覽數
  • 產品使用的瑣碎資料(例如電商網站上的產品備註)特色是不需符合關聯式資料庫的結構 (ex. SQL),因為數量太龐大、產生速度太快。

有了基礎概念後,你可能好奇說:「那這些數據可以如何使用呢?」

下方舉兩個企業內部的 Data Lake 使用案例。

Data Lake 使用案例

Case 1:營運場景

數據種類屬於「結構化的營運數據」。這個場景會用 Data Lake 來產出日報、月報。

例如

  • 我們有多少的使用者
  • 這個月我們賺多少錢
  • 我們的顧客流失率是多少

Case 2:專案場景

數據種類屬於「非結構化數據」。

這個場景會用 Data Lake 來實作特別的專案 (例如 Machine Learning 專案),即時觀察使用者的貼文動態。像是 Twitter 上的 What’s happening 動態牆,可即時顯示近幾個小時的熱門 Tweet。

小結

以上就是 Data Lake 的簡單說明。下一篇文章,我們來了解跟 Data Lake 非常像的名詞- Data warehouses (資料倉儲)

瀏覽 1,814 次

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

發佈留言

Back to top button