在Hadoop、Spark以及Kafka這一代大數據平臺引領風騷10年以后,迎來5G時代。
5G催生車聯網、智能制造、智慧能源、無線醫療、無線家庭娛樂、無人機等新型應用,人和物、物和物之間的連接產生的數據井噴式海量增長,數據類型也進一步豐富, AR、VR、視頻等非結構化數據的比例進一步提升。
傳統數據處理架構三大弊端
當下許多互聯網公司搭建的大數據處理平臺,往往對實時數據和歷史數據進行嚴格區分,這樣既帶來了數據存儲空間的極大浪費,同時也加大了應用程序開發的負擔。而且依照流程,數據會首先注入到Kafka(一個Message bus),隨后根據這個Message bus分兩條線去處理,或通過Spark Streaming去處理實時數據,或按傳統的ETL方式如Hadoop或Elastic去批處理集中得到批處理結果。
這樣的架構存在三大問題:
一是它把數據根據時間的屬性走向兩條處理邏輯,應用程序的處理邏輯會被寫兩遍;
二是這樣的架構要得到批處理的正確結果才可以做聚合處理,對實時處理平臺而言帶來的是無法忍受的延遲;
三是原始數據在不同的開源項目當中被拷貝了多份,如在Kafka中會有3拷貝,到了Spark Steaming還會有3拷貝,在整個系統和里存在6份甚至是9份拷貝的現象都很普遍。但其帶來容量的需求對客戶來說是一場噩夢,尤其是AI引入之后數據的增速是爆發式的。關鍵的是,Message bus并不是一個存儲系統,在Kafka中的數據并不能保證被長期存儲。而對大數據處理平臺來說,最重要的是先得把數據存下來才談得上發掘出更多的商業價值。
另外,Hadoop只能針對歷史數據做批處理,Spark和Kafka只能對Pub/Sub系統進行梳理。可以說,傳統大數據平臺并不完美。
可以說,傳統單一的計算平臺已經無法應對如此復雜、多樣、海量的數據采集、處理的挑戰。
海量、低時延、非結構化的數據特點將進一步促進數據處理和分析技術的進步,推動流式處理技術的發展。
那么,應對5G和物聯網時代的下一代大數據處理平臺,需要具備哪些能力?
2019年12月初的戴爾科技集團上海研發中心之旅活動中,戴爾科技集團Dell EMC軟件工程總監滕昱首先分析了大數據處理領域近期的三大趨勢。
戴爾科技集團Dell EMC軟件工程總監滕昱
一是在Amazon S3A推出之后,憑借其高可用容量和可擴充性等特點逐漸形成對Hadoop分布式文件系統(HDFS)的取代之勢,流式大數據處理平臺存儲端工作負載顯著增加;加上Hadoop可以直接運行于S3A上,突破了綁定于HDFS上的限制。可以說,2020年將會是從HDFS轉向流存儲的元年。
二是在容器編排戰爭中,Kubernetes贏得了勝利,意味著未來的軟件平臺都將以Kubernetes為基礎,在各種各樣公有云和私有云中自由地進行工作負載的遷移變得更加容易。
三是在計算方面,除了要求準確結果,還需要滿足更多實時計算的需求。一個經典的用例就是銀行實時監控的需求,除了能對線上數據進行實時監控處理,還要同時能調用歷史數據。類似的場景還有IoT和5G,特別是車聯網的連接等越來越多的領域。
為了滿足層出不窮的實時應用場景,同時降低大數據應用平臺的投入,戴爾科技集團決定推出一個 “All in one”的新的大數據處理平臺,即Dell EMC流數據處理平臺(Dell EMC Streaming Data Platform,簡稱“DESDP”)。
Dell EMC流數據處理平臺是戴爾科技集團從零開始構建的一套實時流式數據分析與存儲解決方案,旨在為編寫可靠的流式應用程序提供基礎。
借助于該平臺,客戶除了通過諸如S3一類的接口傳輸數據,還可以通過Dell EMC即將提供的Streaming接口去注入數據,計算端不再需要了解數據的來源及傳輸過程,僅需使用SQL或者通用的搜索語法,即可從數據中實時獲得商業價值。
Dell EMC Streaming接口與眾不同的最大特點,是它能接入流數據。
流數據具有四個特點,一是數據實時到達,二是數據到達次序獨立,不受應用系統所控制,三是數據規模宏大且不能預知其最大值,四是數據一經處理,除非特意保存,否則不能被再次取出處理,或者再次提取數據代價昂貴。
從存儲端而言,流數據要求在大并發下實現實時數據低延遲的讀和寫,同時對歷史數據要能高吞吐量的讀,這樣的特性才是一個合格的流存儲接口。