天天看點

資料中台前世今生二:從資料湖到大資料平台看資料應用需求發展

作者:麥聰軟體

2005年Hadoop出現的時候,大資料技術開始普及。

從Hadoop到資料湖:

Hadoop相比經典數倉主要有兩個主要優勢:

  • 完全分布式,可以使用價格低廉的機器堆出一個計算、存儲能力很強的叢集,滿足海量資料的處理要求;
  • 易于擴充,弱化資料格式。當資料被內建到Hadoop之後,可以不保留任何資料格式,資料模型與資料存儲分離。當資料被使用的時候,可以根據不同的模型讀取,滿足異構資料靈活分析的需求。
資料中台前世今生二:從資料湖到大資料平台看資料應用需求發展

資料倉庫和資料湖對比

随着網際網路産業的發展和采集技術的成熟,大量(半)非結構化資料湧現,諸如半結構化的日志,非結構化語音和視訊,攜帶時序和空間資訊的IoT裝置等。

與此同時,伴随着Hadoop技術日趨成熟,2010 Pentaho創始人兼CTO James Dixon在紐約 Hadoop World大會上提出了資料湖的概念:資料湖(Data Lake)是一個以原始格式存儲資料的存儲庫或系統,仿佛各個資料源就像溪流一樣,直接流入成湖。

資料中台前世今生二:從資料湖到大資料平台看資料應用需求發展

資料湖了解圖

資料湖概念的提出,是Hadoop從開源技術走向商業化成熟的标志。企業基于 Hadoop建構資料湖,真正将資料作為一項企業核心資産,拉開了Hadoop 商用化的大幕。

但是,一個商用的Hadoop包含20多種計算引擎,資料研發涉及諸多流程,其技術門檻限制了Hadoop的商用化程序。

那麼資料開發能否像工廠生産一樣,直接在流水線上完成呢?

大資料(開發)平台的興起——資料工廠時代

大資料平台具有很廣闊的範圍,在此提到的大資料平台,指的是面向開發使用的大資料開發平台。

對于一項資料開發任務,在完成一個需求時,常見的流程是:

  • 要把資料導入到大資料平台中,然後按照需求進行資料開發;
  • 待開發完成以後要進行資料驗證比對,确認是否符合預期。
  • 接下來,資料釋出上線,送出排程;
  • 最後,日常的任務運維,確定任務每日能夠正常産出資料。

如此繁雜冗長的工作流程,如果沒有高效平台作為支撐,就類似寫代碼沒有一個好用的 IDE,用文本編輯器寫代碼一樣,别人完成十個需求,你可能連一個需求都完成不了,效率異常低下,根本無法大規模的應用。

大資料平台概念的産生,是為了提高資料研發的效率,降低資料研發的門檻,讓資料能夠在一個裝置流水線上快速地完成加工。大資料平台是面向資料研發場景,覆寫資料研發完整鍊路的工作台。

基于開發的使用場景,可分為資料內建、資料開發、資料測試等。平台的底層是以 Hadoop 為代表的基礎設施,分為計算、資源排程和存儲(如圖)。

資料中台前世今生二:從資料湖到大資料平台看資料應用需求發展

大資料平台架構概念圖

Hive、Spark、Flink、Impala提供了大資料計算引擎:Hive、Spark主要解決離線資料清洗、加工的場景。目前,Spark用得越來越多,性能要比Hive高不少;Flink主要是解決實時計算的場景;Impala主要是解決互動式查詢的場景。

這些計算引擎統一運作在一個稱為Yarn的資源排程管理架構内,由Yarn來配置設定計算資源。

目前最新的研究方向中也有基于Kubernetes實作資源排程的,例如在最新的 Spark 版本(2.4.4)中,Spark已經能夠運作在 Kubernetes 管理的叢集上,這樣的好處是可以實作線上和離線的資源混合部署,節省機器成本。

資料存儲在HDFS、Kudu 和 HBase系統内。HDFS不可更新,主要存全量資料,HBase提供了一個可更新的KV,主要存一些次元表,Kudu提供了實時更新的能力,一般用在實時數倉的建構場景中。

大資料平台像一條裝置流水線,經過大資料平台的加工,原始資料變成了名額,出現在各個報表或者資料産品中。

但随着資料需求的快速增長,報表、名額、資料模型越來越多,越來越多人回報找不到資料,資料不好用,資料需求響應速度慢,這成為阻塞資料産生價值的絆腳石,資料中台即将面世。

猜你想看:

資料中台的前世今生(一):資料倉庫——資料應用需求的湧現

資料中台:始于阿裡,興于DaaS

資料中台墜落神壇,資料服務平台閃亮登場,阿裡、快手又整新活?

麥聰軟體,全球領先的DaaS廠商。兩年内幫助近400家企業數字化轉型更進一步,其中30多家為世界500強企業。核心産品麥聰DaaS平台包含統一資料管理和統一資料服務兩大子產品,具備資料內建、資料開發、資料品質、資料服務相關功能,歡迎大家帶着企業數字化問題與我們一起讨論。

繼續閱讀