Database-Design
首先是數據湖還是數據倉庫?
我一直很困惑是創建數據湖還是數據倉庫,希望有經驗的現實世界的專業人士能給我一些啟示。
我希望使用從多個來源(物聯網設備、API 等)攝取的數據來儲存、視覺化和執行機器學習。我讀到,在我們所處的目前環境中,企業將需要數據湖和倉庫。
我的問題是:
- 我應該先創建一個數據湖,然後從湖中轉換/處理這些原始數據並將其攝取到數據倉庫中嗎?
- 還是數據湖本身就是一個單獨的數據處理管道?
- 還是這取決於案例?
PS:如果這是錯誤的 StackExchange,請告訴我謝謝 :)
這些天有很多相似和重疊的術語(數據湖、數據沼澤、數據倉庫等),我不會太糾結,IMO。
數據湖是集中不同數據源的非正式場所。它們可以是靈活的,不一定需要遵循一個固定的模式,但可以遵循一個。
數據倉庫的定義更加正式,並將這些不同的數據源統一到一個通用結構中,以便輕鬆建構消費應用程序和報告。
因此,您的問題的答案是,它僅取決於您的案例、您需要使用多少不同類型的數據和源,以及是否將數據湖作為中間步驟可以更輕鬆地在應用 ETL 之前完成您的案例(實際上是轉換部分)處理該數據。
如果您的所有數據源都已經遵循一個相當通用的模式,那麼通常您可以直接 ETL 進入您的數據倉庫並完全跳過 Lake。但有時最好使用數據湖來保存提取的原始數據,以防以後需要進行某種程度的協調和調試。它會在您觸摸數據之前添加一層數據外觀,以將其轉換為 Warehouse。