在日前的一次媒體溝通會上,智領(lǐng)云LinkTime Cloud公司CEO 彭鋒介紹了國內(nèi)第?個純K8s在線?數(shù)據(jù)平臺BODS Online,它的出現(xiàn),意味著大數(shù)據(jù)平臺的構(gòu)建難題,大數(shù)據(jù)開發(fā)的低效率,這兩大行業(yè)性問題找到了行之有效的應(yīng)對之道。
盼望著,讓大數(shù)據(jù)平臺借力K8s
個性化推薦是最典型的大數(shù)據(jù)應(yīng)用。在新聞網(wǎng)站、電商網(wǎng)站、短視頻平臺上應(yīng)用的非常普遍,每個用戶看到的推薦內(nèi)容都各不相同,基本都做到了千人千面,能上網(wǎng)的朋友都有體會。
智領(lǐng)云LinkTime Cloud公司CEO 彭鋒表示,這樣一個推薦應(yīng)用其實涉及多個大數(shù)據(jù)組件和流程,對應(yīng)就需要安裝Hadoop、Kafka、Hive、Redis、Spark、Flume等組件,上圖顯示需要8條數(shù)據(jù)線,而真正的部署場景,比上圖描述的更復(fù)雜。
基于傳統(tǒng)大數(shù)據(jù)開發(fā)平臺做開發(fā)時,經(jīng)常需要分散管理各種組件。由于每個組件的安裝流程不同,系統(tǒng)版本要求不同,依賴的第三方庫不同,高可用容錯設(shè)計,授權(quán)、建權(quán)機制都各不相同,管理流程不同,把這些組件拼接到一起就非常有挑戰(zhàn)性。
就好比管理具備各種超能力英雄一樣困難,每個都很重要,每個英雄的性格都不一樣,讓這些人齊心協(xié)力的朝著一個目標(biāo)前進,對能力的要求也非常高,而這種要求無疑阻礙著大數(shù)據(jù)的進一步發(fā)展。
隨著以K8s技術(shù)為代表的云原生技術(shù)浪潮的襲來,為大數(shù)據(jù)開發(fā)平臺的問題提供了解決之道。
原本,K8s作為新的技術(shù)生態(tài),它缺少對于大數(shù)據(jù)組件的支持,雖然有人嘗試讓各種組件運行在K8s之上,但都并不成熟,所以,業(yè)內(nèi)也基本沒有基于K8s的云原生大數(shù)據(jù)平臺。
彭鋒介紹稱,去年云原生大數(shù)據(jù)領(lǐng)域出現(xiàn)了兩大標(biāo)志性事件,一個2021年3月份,Apache的Spark支持了Kubernetes,另外一個,2021年5月份,Kafka也公開支持Kubernetes。
在彭鋒看來,大數(shù)據(jù)平臺的云原生化已是大勢所趨。
從技術(shù)的角度看,Hadoop會逐漸遷移到K8s上。常說的Hadoop三架馬車中,計算框架MapReduce會被更高效的Spark所取代,資源調(diào)度組件YARN正在被K8s取代,最堅挺的HDFS也有了云原生的對標(biāo)方案,這意味著可以直接在K8s上運行所有現(xiàn)在的大數(shù)據(jù)工作負載。
從大數(shù)據(jù)開發(fā)者的角度看,當(dāng)所有組件能運行在K8s之上以后,集成的開發(fā)管理系統(tǒng)成為可能,打破分散管理各個組件的局面。從使用者的角度看,這意味著數(shù)據(jù)能力可以以一種集成的方式來使用,可以輕松集成到各種應(yīng)用中,而不是一些散亂無章的代碼。
總之,隨著K8s對大數(shù)據(jù)組件的更多支持,基于K8s的云原生大數(shù)據(jù)平臺便成為可能。那么,當(dāng)大數(shù)據(jù)平臺遇上K8s會發(fā)生什么呢?
走近基于K8s的云原生大數(shù)據(jù)平臺——BDOS Online
智領(lǐng)云官網(wǎng)上有一則博文叫《如何在 4 天時間內(nèi)開發(fā)一款薅羊毛神器,并完成交付?》,說的是,五位開發(fā)人員用四天時間就開發(fā)了一套智能商品推薦系統(tǒng),而且,全過程完全沒有加班。對于熟悉大數(shù)據(jù)開發(fā)流程的開發(fā)者來說,這非常不可思議。
其實,這套智能商品推薦系統(tǒng)就是在智領(lǐng)云的BDOS Online平臺上開發(fā)的。
BDOS Online是一款DPaaS(Data Platform as a Service)服務(wù),底層使用的是阿里云的K8s托管平臺ACK,在此之上,部署了智領(lǐng)云的大數(shù)據(jù)開發(fā)平臺,這一套平臺可以引導(dǎo)開發(fā)者一步步完成從數(shù)據(jù)導(dǎo)入到最后應(yīng)用部署的全流程。
如圖所示,這款叫“薅羊毛神器”的應(yīng)用就是智能商品推薦系統(tǒng),上圖左側(cè)清晰展示了整個應(yīng)用程序的構(gòu)建流程,同時也是這套系統(tǒng)的工作流程,從發(fā)布一款Docker部署的MySQL數(shù)據(jù)開始,隨后導(dǎo)入數(shù)據(jù)、創(chuàng)建Hive表、進行ETL、數(shù)據(jù)清洗、創(chuàng)建API,最后發(fā)布在線應(yīng)用。
而在用戶端,我可以看到系統(tǒng)為我推薦的優(yōu)惠商品,這就是一個完整的智能商品推薦系統(tǒng)。
上圖是一個空白項目的初始化界面,我也可以從數(shù)據(jù)采集導(dǎo)入開始創(chuàng)建一個項目,如圖所示,這里提過了多種導(dǎo)入方式,同樣的,數(shù)據(jù)轉(zhuǎn)換和數(shù)據(jù)分析也有多種實現(xiàn)方式,這兩部分也是開發(fā)者花時間最多的部分,也是大數(shù)據(jù)開發(fā)的精髓所在。
有了BDOS Online,開發(fā)者就可以將絕大部分時間花在數(shù)據(jù)轉(zhuǎn)換和數(shù)據(jù)分析的業(yè)務(wù)邏輯實現(xiàn)上面,而不用花時間設(shè)置服務(wù)器硬件,花大量時間安裝、配置和管理各種插件,BDOS Online初始化時已經(jīng)將這些都配置好了,這就是能節(jié)省開發(fā)時間的根本原因。
體驗過公有云用戶的朋友會覺得,這樣一套用戶體驗極佳的開發(fā)流程似乎是理所當(dāng)然的。然而,受限于技術(shù)原因,這樣的云原生大數(shù)據(jù)平臺在市場上并不多,而智領(lǐng)云之所以能推出國內(nèi)第?個純K8s在線?數(shù)據(jù)平臺,還要從十多年前說起。
智領(lǐng)云CEO彭鋒是非常資深的數(shù)據(jù)分析從業(yè)者,他從2008年就開始做基于Hadoop的大數(shù)據(jù)平臺建設(shè)工作,2011年成了Twitter大數(shù)據(jù)平臺系統(tǒng)架構(gòu)師。在Twitter期間,他就見識到云原生數(shù)據(jù)開發(fā)能力的威力。
當(dāng)各部門在同一平臺上進行開發(fā)時,開發(fā)效率呈指數(shù)級增長。當(dāng)集群規(guī)模從80臺擴展到8000臺時,也全是在云原生架構(gòu)上擴展而來的。或是有感云原生數(shù)據(jù)平臺的種種優(yōu)勢,彭鋒堅定了要做云原生大數(shù)據(jù)平臺的信念。
2016年,智領(lǐng)云成立,2017年,智領(lǐng)云開始做大數(shù)據(jù)平臺的云原生改造,當(dāng)時是基于Mesos(對標(biāo)K8s的方案)平臺來做的,一方面是因為在Twitter就在用Mesos,另一方面,Mesos對于大數(shù)據(jù)組件的支持度比較高,于是,智領(lǐng)云很快就完成了大數(shù)據(jù)平臺的云原生化。
隨后幾年里,技術(shù)風(fēng)向發(fā)生了大的變化。K8s憑借谷歌在開源社區(qū)的影響力,在幾年里超越Mesos成為容器編排領(lǐng)域事實上的標(biāo)準(zhǔn),彭鋒一直期待著云原生的大數(shù)據(jù)平臺發(fā)揮真正威力,等待基于K8s構(gòu)建云原生的大數(shù)據(jù)平臺的那一天。
隨著K8s支持Spark和Kafka,智領(lǐng)云開始做基于K8s的大數(shù)據(jù)平臺,2022年就在業(yè)內(nèi)率先推出了在線的數(shù)據(jù)開發(fā)平臺。這是一個完全運行在K8s之上的大數(shù)據(jù)平臺,用戶可以選擇部署在本地,也可以部署在公有云上,在公有云上部署的就是我們剛才看到的BDOS Online。
BDOS Online平臺提供了各種插件,所以,用戶可以把BDOS Online作為開發(fā)平臺使用。除此之外,用戶也可以用它來構(gòu)建K8s上的DataOps體系。
因為,BDOS Online的底層其實是智領(lǐng)云的DataOps管理體系,這是智領(lǐng)云的核心能力所在,該體系主要包括數(shù)據(jù)門戶,數(shù)據(jù)質(zhì)量管理,應(yīng)用調(diào)度、資源計費等功能。
基于在底層技術(shù)的積累,智領(lǐng)云可以在公有云和私有云上改造和部署各種組件,可以進行容器的編排與調(diào)度以及發(fā)布管理。
也正是因為有這些積累,才使得智領(lǐng)云快速完成了從Mesos到K8s的技術(shù)路線轉(zhuǎn)移,推出了國內(nèi)第一個純K8s的在線大數(shù)據(jù)平臺。