自2014年開始,data lake(數據湖)這個概念就出現(xiàn)了,一直持續(xù)發(fā)展,雖然各大云商也相繼推出了自己的產品,如Amazon AWS、Google Cloud、Microsoft Azure等,但數據湖的發(fā)展可以用“不溫不火”來形容。
這篇文章,帶大家一探data lake為何物,為何有機會發(fā)展,而又鵝行鴨步背后有何邏輯!
Data lake到底是什么?面對如此簡單的一問,江湖各家大廠家卻是各執(zhí)一詞,撲朔迷離。各家的思路基本上就是把已有的基礎產品再包裝,形成非面向業(yè)務場景的松散解決方案。
如Amazon AWS把data lake包裝為: S3存儲、數據目錄、數據冷備;并輔之以數據移動工具、數據分析工具、機器學習工具。
而部分廠商更愿意把它定義為hadoop本身…
既然沒有明確的功能定義,從理論層面探索data lake就變的沒什么實際意義了,這也是市場在這上面踟躕不前的一個原因,這玩意到底是啥都說不清,憑什么給你錢?
那咱們就轉換下思路,追本溯源,從大數據的發(fā)展歷程來看下data lake的產生的必要性、以及有無壯大的原動力。
二、回首傳統(tǒng)數據倉庫(Data warehouse)
從業(yè)務流程上,傳統(tǒng)data Warehouse是從數據需求(問題)角度出發(fā),甄選業(yè)務場景數據源、按照數倉庫范式清洗與建模、并按照主題還原為可信的業(yè)務過程后,給業(yè)務方重復使用,也就是所謂的數據集市(data Mart)。
總結下來傳統(tǒng)數倉的理念還是管控:管控數倉架構、管控數據流向、管控業(yè)務場景。
從data Warehouse數據流動角度看,整個流程如下:

三、傳統(tǒng)數據倉庫面臨的挑戰(zhàn)
隨著公司快速發(fā)展,面臨的幾個矛盾
data mart模式導致的煙囪式建設與數據需跨業(yè)務線廣泛連接之間的矛盾
數據ETL、數據建模工作的響應速度與數據反哺業(yè)務迭代創(chuàng)新之間的矛盾
數據賦能與業(yè)務場景探索的脫節(jié)
通過上面的闡述,稍作抽象,即可發(fā)現(xiàn)一個有趣的現(xiàn)象:
工作職責上, 更多數據工作正在從IT向DS(數據科學家,下同)過渡,IT傾向于與DS解耦
工作方式上,在 數據從輔助決策向驅動決策升級的過程中,工作模式從"提出問題(DS)-解決問題(IT)"逐步向"場景化的泛問題-分析數據提出具體問題-分析數據-解決具體問題"的工作方式轉換
在這個背景下,為了解決這些問題,業(yè)界發(fā)起了對data lake使命和架構的的探討…
四、什么是Data lake
注:為了維持定義的精確性,下面幾段簡單的英文就不做翻譯了,敬請諒解 :)
從Amazon AWS得到的解釋
A data lake is a centralized repository that allows you to store all your structured and unstructured data at any scale. You can store your data as-is, without having to first structure the data, and run different types of analytics—from dashboards and visualizations to big data processing, real-time analytics, and machine learning to guide better decisions.
從維基百科得到的解釋
A data lake is a system or repository of data stored in its natural format,usually object blobs or files. A data lake is usually a single store of all enterprise data including raw copies of source system data and transformed data used for tasks such as reporting, visualization, analytics and machine learning.
A data lake can include structured data from relational databases (rows and columns), semi-structured data (CSV, logs, XML, JSON), unstructured data (emails, documents, PDFs) and binary data (images, audio, video).
受到的質疑與挑戰(zhàn)
One criticism about the data lake is that the concept is fuzzy and arbitrary. It refers to any tool or data management practice that does not fit into the traditional data warehouse architecture.
簡單而言,data lake就是有一個中心化的存儲,所有的數據以它本來的形式(來自RMDB的結構化數據、CSV/JSON/XML等半結構化數據、documents等非結構化數據、甚至image/audio等二進制數據)都放到這個存儲里, 進而為后續(xù)的報表、可視化分析、實時分析、以至于機器學習提供數據支撐。
五、Data lake架構
為了應對傳統(tǒng)數據倉庫面臨的問題,業(yè)界給出了不同的解決方案,下面的軸輻式(Hub and Spoke)架構也是其中之一:

HUB(軸)要解決的問題:
- 統(tǒng)一存儲:Centralized, singular, schema-less data store with raw (as-is) data as well as massaged data
- 索引與檢索數據:Ability to map data across sources and provide visibility and security to users, Catalog to find and retrieve data
- 數據安全:Ability to manage security, permissions and data masking
- 自助服務:Supports self-provisioning of data management, and analytic tools without IT intervention
SPOKE(輻條)需要解決的問題:
- 支持業(yè)務團隊以自助服務的形式處理數據的可視化、數據探索、數據協(xié)作等業(yè)務問題
- IT團隊提供相應工具鏈、安全沙箱、標準化數據服務等基礎設施
六、數據架構的演進趨勢
大數據為了賦能業(yè)務,從數據基礎建設、業(yè)務快速迭代兩個角度來看,數據和組織架構正以下面的方式演進:

特別說明:上圖并非說IT/ETL的需求變少了,而是為了說明DS的業(yè)務需求和能力需求變的更多和更強了。
七、一道鴻溝
這么一弄,問題就來了,即使一個良好定義的數據倉庫,在數據檢索、理解上都存在相當的難度,這種原汁原味存放原始(非結構化)數據的地方,用戶如何檢索數據呢?怎么理解這些原始數據的業(yè)務含義呢?隨著數據量的膨脹,這個問題會愈演愈烈,直到變成數據沼澤。
data lake絕不是一個簡單的把原始數據以它原有的樣子放到一起,用戶就可以happy的進行可視化、洞察和分析的,因為這和他們需要的這些服務之間,有一道不可逾越的鴻溝。這道鴻溝需要良好定義的data lake架構來解決。

這個良好定義的data lake架構,目前來看就是“數據治理”,我們需要把重心從系統(tǒng)建設提升到數據建設,在“數據治理”的基礎上,為上層業(yè)務提供自助化的服務。因此我們還有如下的幾點收獲:
- data lake與data warehouse的理念不同,相對于data Warehouse的注重數據管控,data lake更傾向于數據服務
- data lake對數據從業(yè)人員的素質要求更高;對數據系統(tǒng)的要求更高,要防止數據湖變數據沼澤 ,此時就需要借助現(xiàn)代化的數據治理能力
- data lake與data warehouse不是互斥的。當前條件下,data lake并不能完全替代warehouse。尤其是對于已經使用data warehouse的公司,這種情況下warehouse可以作為data lake的一個數據來源
八、總結
傳統(tǒng)的數據倉庫模式,確實在快速發(fā)展的企業(yè)面前顯的力不從心。
data lake以數據治理為基礎、一套自助服務為抓手的工具鏈來賦能業(yè)務發(fā)展,這套理論是否是最適合現(xiàn)代企業(yè)(尤其是快速創(chuàng)新的企業(yè))的,在一定程度上可以,但還需要持續(xù)驗證。但是有一點值得注意,業(yè)界在data lake的嘗試上一般都會忽視數據治理的重要性,這是很危險的,由它導致的數據沼澤也是企業(yè)對data lake持續(xù)觀望的愿意之一。
另外,現(xiàn)在崛起的數據中臺,它完全以數據治理、數據服務為核心理念而建,并比data lake更貼近業(yè)務場景,這也是數據中臺方興未艾的一個原因。
本文轉載自公眾號:數據老鐵匠
本文轉載自公眾號:數據老鐵匠