天天看點

這才是大資料的正确打開方式

摘要:如何将各種大資料技術棧整合在一起,發揮出大資料技術的最大價值成為業界都在關注的問題。

最近,随着健康碼的流行,大資料又重回大衆的視野。作為新基建産業的原油,資料逐漸邁向資訊産業的核心。不過随着資料量級的不斷擴大,從資料倉庫到資料湖再到倉湖一體,如何将各種大資料技術棧整合在一起,發揮出大資料技術的最大價值成為業界都在關注的問題。

權威的咨詢機構IDC對于大資料的定義是現有技術難以處理的資料。從曆史來看,在谷歌提出大資料三駕馬車的論文時,當時的關系型資料庫技術的确難以處理大規模的資料。傳統SQL在谷歌海量的查詢記錄面前,根本跑不出結果。

目前,科技企業要處理的資料量還在迅速增長,以筆者所在的銀行為例,創新性的産品令銀行要存儲越來越多的資料,以開放銀行和數字貨币最為典型。比如開放銀行産品推出之前,無論是櫃台、ATM、網上銀行還是手機銀行,銀行的交易都是由自身完全可控的裝置或APP發起的,而開放銀行産品無處不在、無時不在,要求銀行必須要記錄客戶的行為資料,這也就使銀行要處理更多更龐大的資料。同樣的情況也出現在數字貨币上,我國的央行數字貨币(DCEP)一個最重要的屬性就是離線錢包,這也就意味着DCEP必然要記錄之前不會展現在銀行賬面上的現金交易資訊,這也會将金融交易的資料量級再上台階。

在諸多行業業務上雲如火如荼的大背景下,從工業網際網路及IoT的角度看,資料的量級不斷創新高,從我了解到的情況,各大廠的資料量級正在以年化80%左右的速度增長,是以可以說大資料技依舊術方興未艾,未來還有廣闊的發展空間。

在梳理資料存儲模型演進的曆史後,明顯可以發現,這是一個随着資料量級不斷擴大,資料模型不斷将傳統特性退化掉的過程,在這個演化當中存儲的效率不斷提升。

從最早關系型資料庫的視角看,資料庫是工廠的工廠中的房間,資料是原材料。工廠中的房間為了進行原材料加工,有大量的操作裝置,原材料随時會被重塑修改,不适合進行大量材料的儲存場所。

關系型資料庫在大量資料存儲方面的短闆直接催生了Hadoop等大資料技術的革命,從大資料的視角看,大資料自身就是儲存倉庫,而資料已經是加工完成的成品,沒有被重塑修改復原的需求。比如HDFS的實作中所有資料隻能寫入一次,無法修改,這其實是退化掉資料的特性,以換取海量資料的儲存與查詢性能。

而随着大資料應用的進一步拓展,業界發現價值密度更低的非結構化資料也有儲存及挖掘的必要。比如客服的對話可能是語音、文字甚至是圖像、視訊,這都不是傳統意義上資料庫、數倉可以處理的結構化資料,是以用于儲存非結構化的資料湖出現了,在資料湖中資料标準化、結構化的特性也退化了。

第一座大山是處理時效:在了解資料存儲模型的演進過程後,我們可以看出關系型資料庫、資料倉庫與資料湖的底層構模組化型并不相同,彼此相容性不佳。這首先就會催生出資料處理的時效性問題,對于處理時效的要求可能是大資料工程師與産品經理之間永遠無法達到的協定。

以筆者所在的銀行為例,分析資料在交易核心資料庫中跑批處理,再ODS抽取ETL分析到數倉,再進一步訓練流式計算,最後再入湖,其時效最快也是T+1日,而且Hadoop和資料湖的開源生态中很多元件并不相容,日常運維已捉襟見肘,想提速也無從下手,但業務對了轉瞬即逝的營銷機會又如此渴求,T+1分鐘可能都會嫌慢。

如果還回答不出更細節、隐含的問題,比如非線性問題,還要把資料複制到SAS中做機器學習,再做統計的名額體系,去做進一步挖掘。資料要在這裡搬動三次,複制三份備援,還要管理資料一緻性,每天資料中心運維的大量工作在做資料搬家。

第二座大山是資料治理: 現在,資料中心也開始要做一個融合性的計算架構。比如,現在AI要做online訓練,淘寶推薦引擎,滴滴打車的路徑動态規劃都在做即時資料,這都需要很高的資料治理水準進行支撐。

資料治理作為擺在大資料工程師面前的一大痛點,去年初微盟發生了舉世矚目的删庫事件,可以看到從2月23日删庫中斷事件,到3月1日的資料全面找回,再到3月3日的資料恢複整個事件持續了一周多的時間。

對微盟這樣體量的電商來說,損失無疑是巨大的,股市市值的蒸發是一方面,更重要的是科技公司從本質上是經營資料的公司,而資料丢失事件與銀行金庫被盜事件從某種程度來說是同樣性質的事件,都會對當事公司的聲譽造成極大的影響。造成這個問題的本質還是由于資料治理水準,隻有将資料按照重要性把資料分類,并分别制訂治理政策,才能在真正有用的資料丢失時找到最切實可行的應對辦法,眉毛胡子一把抓難以真正降本提效。

按照筆者的觀察,目前從治理角度,可以将資料分為以下三種類型:

應用資料:也就是交易類應用所産生的資料。為了滿足業務需要建構業務IT系統,随着IT業務系統的不斷運作,大量應用資料就産生了,這些資料經過ETL加工進入資料倉庫,進行再處理,供業務應用。這些資料都是單一的關系型資料,資料量級是GB的。

使用者行為資料:随着網際網路和電商的快速發展,大量人的操作行為和使用行為産生的資料,像谷歌、臉書等大資料互聯公司,都記錄人的形成産生的資料。上網行為、浏覽行為、購買行為、評論行為、刷微網誌,做抖音等都可以産生大量資料。這些資料不再是單一的結構化資料,出現了大量文檔、音頻和視訊資料,資料量級是TB級的。

硬體日志資料:進入萬物互聯的時代,大量機器傳感器,IoT裝置都會産生大量資料。這些裝置 7*24小時産生資料,資料格式也是多種多樣,有的是日志資料,有的是時序資料,有的是網格資料等等,資料量級是PB的。

從資料治理角度上講,上述資料的備份需求是不同的,如果混到一起,那快速恢複業務根本無從談起。而從資料使用的角度上講,随着海量的行為及日志類資料的出現,資料的價值必然要從資料治理的角度去要價值。

針對行為及日志等重要性等級不高的資料,一般采用異地錄音帶備份的方式,使用溫備乃至冷備的試進行,不過從目前情況看不少企業尤其是創業型企業,都沒有百年老店的觀念,在初創時期對于這方面考慮和規劃還不夠,規劃沒做好,将來必然會對企業發展有負面影響。

這又就引出第三座大山 - 災備規劃:但也經常被公司管理人員所忽略,大多數初創公司不會提前規劃災備體系,公司上規模之後再進行災備建設又是mission impossible。一般來說兩地三中心中的生産與同城中心是雙活的可以快速接管業務,異地中心資料延遲同步,以應對一些删庫删表類的誤操作。正如剛剛所說Hadoop與資料湖兩套體系中的開源元件相容性很差,能讓兩者協同工作已屬不易,再補充建設災備節點難上加難。

一般來說目前比較流行的災備體系是兩地三中心的架構,也就是至少在兩個地域建設三個資料中心,其中:

主中心:正常情況下全面提供業務服務

同城中心:一般與主中心處在同一省份,主中心使用同步複制的方式來向同城災備中心傳輸資料,保證同城中心資料複本為最新,随時可以接管業務,以保證RTO的名額。但是同城中心無法應對此類删庫事件。

異地中心:一般使用延時異步複制(延時時間一般為30分鐘左右)的方式向異地災備中心傳輸資料,其中同步複制的好處是一旦主中心被人工破壞,那麼不會立刻涉及異地中心。以保證RPO的名額。

總結災備體系的最佳實踐就是兩地三中心;同城保證業務連續性,優先負責使用者體驗;異地保證資料連續性,確定企業生存底線。上雲後的災備規劃也一定要納入設計範圍,一旦沒有提前的規劃,後續的補齊填坑的工作非常麻煩。

從上面三座大山可以看出,大資料最終使用者的最佳選擇就是在雲平台上找到大資料的一棧式解決方案,屏蔽底層元件的差别,才能提高效率,低成本運維,是以可以說與雲計算無縫對接的雲原生技術肯定會是未來的方向。

這才是大資料的正确打開方式

而華為雲雲原生大資料以其容器化內建及全棧大資料雲平台的兩大特性,很好解決了大資料技術在實際落地中的特點,我們用“大資料的作業系統”來定義華為雲的雲原生大資料會更加直覺貼切:

容器化內建:基于Mesos的資源管理,支援Marathon和Kubernetes的容器編排架構,采用雲原生架構的資料平台。底層是對容器化的支援,以及對Hadoop、Spark、Kafka、Tensorflow、Hive等這些大資料開源元件的容器化釋出,這就是打地基。

華為雲通過開源的Docker、K8S、Mesos等技術,對主流的Hadoop、Hive、Spark、Kafka等多種大資料技術元件進行了容器化內建,實作大資料應用與底層運作環境之間的解耦,推出了應用雲平台(PaaS)與容器大資料平台。也就是說華為雲的使用者不用再過度關心底層開源元件的運維了,可以更加專注于自身的業務。

全棧大資料雲:在大資料開源元件容器化的基礎上,華為雲還把資料開發平台統一內建,推出了資料湖治理中心DGC(Data Lake Govenance Center,連結:https://www.huaweicloud.com/product/dayu.html),包括資料采集、資料規範、資料開發、資料服務、資料治理、資料可視化等多項工具。資料內建開發平台與應用雲平台(PaaS)與容器大資料平台打包傳遞。 并已經服務了能源、教育、醫療健康、物聯網、金融等領域的數十家客戶,據筆者掌握的資訊,華為雲的客戶複購率近100%。

更進一步,華為雲最近還推出了一套幫助政企建構資料體系的資料使能DAYU服務(連結:https://www.huaweicloud.com/solution/dataenabling.html),結合華為數字化轉型實踐和30多年在ICT基礎設施領域積累的技術,攜手行業合作夥伴,為客戶提供一站式資料全生命周期管了解決方案,打造“全域、服務化、資産化、智能、安全”的資料體系,釋放資料價值。

展望未來,雲原生大資料技術還可以充分利用AI技術降本增效:

利用人工智能将冷熱資料分層分離,讓計算和存儲資源充分利用,有效降低資料管理成本。

通過分析系統運作狀态和日志資料資訊,利用人工智能模組化,來實作動态系統參數調整和系統優化,顯著降低系統資料管理者的運維成本。

利用機器學習技術幫助系統建立更加準确高效的線上預警與實時監測系統,來實作智能化的運維管控和資源調配,幫助系統管理人員将更多的時間和精力集中在更重要的系統任務上。

點選關注,第一時間了解華為雲新鮮技術~

繼續閱讀