2003年至今淘寶網(wǎng)從零開(kāi)始飛速發(fā)展,走過(guò)了13個(gè)年頭,支撐淘寶業(yè)務(wù)野蠻式生長(zhǎng)背后是一套不斷完善的技術(shù)平臺(tái),淘寶大數(shù)據(jù)平臺(tái),就是其中非常重要的一個(gè)組成部分,承擔(dān)了數(shù)據(jù)采集、加工處理、數(shù)據(jù)應(yīng)用的職責(zé),淘寶大數(shù)據(jù)平臺(tái)一路到今天,總共經(jīng)歷了三個(gè)大的階段(如圖1),不同階段面臨了不一樣的挑戰(zhàn),隨著我的理解回顧下這些年大數(shù)據(jù)所經(jīng)歷過(guò)的故事:
圖1 數(shù)據(jù)倉(cāng)庫(kù)平臺(tái)發(fā)展三個(gè)階段
第一個(gè)階段:RAC時(shí)代
2008年前的單節(jié)點(diǎn)ORACLE,這個(gè)時(shí)候還稱(chēng)不上數(shù)據(jù)倉(cāng)庫(kù),只能承擔(dān)簡(jiǎn)單的數(shù)據(jù)處理工作,也基本上沒(méi)有數(shù)據(jù)倉(cāng)庫(kù)架構(gòu),隨著業(yè)務(wù)的飛速發(fā)展,很快單節(jié)點(diǎn)的ORACLE因無(wú)擴(kuò)展能力,計(jì)算存儲(chǔ)能力就應(yīng)付不了了;
2008年之后,為了應(yīng)對(duì)日益增長(zhǎng)的數(shù)據(jù)量,RAC集群應(yīng)運(yùn)而生,從一開(kāi)始的4個(gè)節(jié)點(diǎn)逐步發(fā)展到20個(gè)節(jié)點(diǎn),成為當(dāng)時(shí)號(hào)稱(chēng)全球最大的RAC集群,在ORACLE官網(wǎng)上也作為了經(jīng)典案例,RAC集群當(dāng)時(shí)不管在穩(wěn)定性、安全性、存儲(chǔ)能力還是計(jì)算能力都表現(xiàn)非常優(yōu)秀,隨之而來(lái)第一代數(shù)據(jù)倉(cāng)庫(kù)架構(gòu)也逐步形成;
這個(gè)階段數(shù)據(jù)的ETL過(guò)程主要通過(guò)ORACLE的存儲(chǔ)過(guò)程實(shí)現(xiàn),大量的SQL腳本任務(wù)運(yùn)行在集群上,任務(wù)運(yùn)行的調(diào)度過(guò)程是通過(guò)Crontab來(lái)進(jìn)行控制管理,隨著任務(wù)數(shù)的不斷增長(zhǎng),這時(shí)面臨最大的問(wèn)題是如何保證這成千上萬(wàn)的腳本每天是正常運(yùn)行,出錯(cuò)后如何及時(shí)發(fā)現(xiàn)解決,這在當(dāng)時(shí)天天困擾著開(kāi)發(fā),一直處于每天救火的狀態(tài),也就是這個(gè)時(shí)候,為了解決這個(gè)難題,數(shù)據(jù)團(tuán)隊(duì)開(kāi)始自主研發(fā)調(diào)度系統(tǒng),并將之命名為天網(wǎng)調(diào)度系統(tǒng),形成了如下第一代調(diào)度系統(tǒng)的架構(gòu)和原型:
圖2 天網(wǎng)調(diào)度系統(tǒng)架構(gòu)
圖3 天網(wǎng)調(diào)度系統(tǒng)原型
第二個(gè)階段:HADOOP時(shí)代
調(diào)度系統(tǒng)的上線很好的解決了每天救火的狀態(tài),但是好景不常在;2008年,淘寶B2C新平臺(tái)淘寶商城(天貓前身)上線;2009年,淘寶網(wǎng)成為中國(guó)最大的綜合賣(mài)場(chǎng);2010年1月1日 淘寶網(wǎng)發(fā)布全新首頁(yè),此后聚劃算上線,然后又推出一淘網(wǎng);業(yè)務(wù)的飛速發(fā)展給數(shù)據(jù)帶來(lái)的挑戰(zhàn),就是每天處理的數(shù)據(jù)量也在不斷的翻倍,首先碰上瓶頸的是RAC集群針對(duì)網(wǎng)站的訪問(wèn)日志數(shù)據(jù)已經(jīng)搞不定了,RAC集群雖然有一定的擴(kuò)展能力,但是無(wú)法無(wú)限制的線性擴(kuò)展,并且擴(kuò)容就意味著高昂的機(jī)器成本和軟件成本,為了應(yīng)對(duì)日益增長(zhǎng)的數(shù)據(jù)量,2009年數(shù)據(jù)團(tuán)隊(duì)開(kāi)始探索新的技術(shù)領(lǐng)域,同時(shí)探索應(yīng)用了兩個(gè)方向的技術(shù):Greenplum 和 Hadoop,主要的場(chǎng)景就是用來(lái)解決海量的日志數(shù)據(jù),Hadoop因其良好的線性擴(kuò)展能力,并且是開(kāi)源的系統(tǒng),能夠基于官方版本二次開(kāi)發(fā)適合淘寶的特性功能,逐漸占據(jù)了優(yōu)勢(shì);
2010年初,最終確定放棄Greenplum和RAC,全面使用Hadoop,也就是這個(gè)時(shí)候我加入了淘寶數(shù)據(jù)團(tuán)隊(duì),之后不久數(shù)據(jù)團(tuán)隊(duì)啟動(dòng)了去O項(xiàng)目,整個(gè)數(shù)據(jù)團(tuán)隊(duì)歷經(jīng)一個(gè)多月時(shí)間,風(fēng)風(fēng)火火將所有RAC上的存儲(chǔ)過(guò)程,改寫(xiě)成HIVE和MR腳本,并將所有的數(shù)據(jù)都搬到了Hadoop上,Hadoop集群命名為云梯1,形成了Hadoop時(shí)代的數(shù)據(jù)倉(cāng)庫(kù)架構(gòu),如下圖4:
圖4 云梯1數(shù)據(jù)倉(cāng)庫(kù)架構(gòu)
進(jìn)入2010年底,數(shù)據(jù)應(yīng)用場(chǎng)景越來(lái)越多,2010年底發(fā)布了量子統(tǒng)計(jì)(淘寶官方版),2011年4月1日淘寶發(fā)布了數(shù)據(jù)魔方,將數(shù)據(jù)對(duì)外進(jìn)行開(kāi)放,廣告和搜索團(tuán)隊(duì)也大量將數(shù)據(jù)應(yīng)用到業(yè)務(wù)系統(tǒng)中,對(duì)內(nèi)的淘數(shù)據(jù)產(chǎn)品也越來(lái)越成熟,數(shù)據(jù)的大量應(yīng)用,帶來(lái)的一個(gè)問(wèn)題是如何保證數(shù)據(jù)的準(zhǔn)確性和穩(wěn)定性,需要從數(shù)據(jù)采集到數(shù)據(jù)加工及最終的數(shù)據(jù)應(yīng)用全流程的保障;
這時(shí)第一個(gè)環(huán)節(jié)就碰到了問(wèn)題,數(shù)據(jù)同步,業(yè)務(wù)系統(tǒng)有各種各樣的數(shù)據(jù)源,ORACLE、MYSQL、日志系統(tǒng)、爬蟲(chóng)數(shù)據(jù),當(dāng)時(shí)有多種同步的方式,有通過(guò)SHELL腳本的、也有通過(guò)Jdbcdump的、還有別的方式,當(dāng)時(shí)負(fù)責(zé)數(shù)據(jù)同步的同學(xué),最痛苦的事情莫過(guò)于,業(yè)務(wù)系統(tǒng)進(jìn)行數(shù)據(jù)庫(kù)變更時(shí),各種同步任務(wù)需要不斷的調(diào)整,每次調(diào)整幾百個(gè)任務(wù)極其容易出錯(cuò),當(dāng)時(shí)為了解決數(shù)據(jù)同步的問(wèn)題,數(shù)據(jù)工具團(tuán)隊(duì)開(kāi)始研發(fā)專(zhuān)門(mén)的同步工具DATAX,也就是現(xiàn)在同步中心的前身,同時(shí)還研發(fā)了針對(duì)DB的實(shí)時(shí)同步工具Dbsync和針對(duì)日志的TT,現(xiàn)在統(tǒng)一叫TT,如圖5:
圖5 云梯1數(shù)據(jù)同步工具
天網(wǎng)調(diào)度系統(tǒng)也不斷進(jìn)行完善,開(kāi)始支持小時(shí)調(diào)度、甚至分鐘調(diào)度,并且集成了自動(dòng)告警等一系統(tǒng)功能,升級(jí)為在云端,相關(guān)的DQC系統(tǒng)、數(shù)據(jù)地圖、血緣分析等周邊系統(tǒng)在這個(gè)時(shí)期不斷推出,數(shù)據(jù)團(tuán)隊(duì)也不在斷壯大。
在這期間,雙十一網(wǎng)購(gòu)狂歡節(jié)的影響力不斷放大,已成為中國(guó)電子商務(wù)行業(yè)的年度盛事,并且逐漸影響到國(guó)際電子商務(wù)行業(yè),不斷刷新的成交記錄刺激著所有人的神經(jīng)。這時(shí)為了直觀的提供第一線的數(shù)據(jù)給到?jīng)Q策層,產(chǎn)生了數(shù)據(jù)直播間的數(shù)據(jù)應(yīng)用,需要活動(dòng)當(dāng)天及統(tǒng)計(jì)相關(guān)的數(shù)據(jù),2013年前,采用的方式都是基于Hadoop一個(gè)小時(shí)計(jì)算一次的方式進(jìn)行數(shù)據(jù)計(jì)算,數(shù)據(jù)存在一定的延遲性,從2013年開(kāi)始,數(shù)據(jù)團(tuán)隊(duì)開(kāi)始投入研發(fā)實(shí)時(shí)計(jì)算平臺(tái),也就是現(xiàn)在的galaxy,并在當(dāng)年的雙11上線了第一個(gè)應(yīng)用,雙11數(shù)據(jù)直播間實(shí)時(shí)版本。
第三個(gè)階段:MaxCompute(原ODPS)時(shí)代
就在Hadoop大量應(yīng)用的同時(shí),另外一個(gè)項(xiàng)目正在悄悄進(jìn)行,那就是阿里云團(tuán)隊(duì)自主研發(fā)的ODPS系統(tǒng),ODPS所有的代碼都由阿里自己完成,在統(tǒng)一、安全、可管理、能開(kāi)放方面相比于Hadoop做了大量的完善,ODPS系統(tǒng)命名為云梯二,從2010年開(kāi)始,在很長(zhǎng)一段時(shí)間內(nèi),一直處于云梯一和云梯二并存的狀態(tài);
這期間,集團(tuán)為更好的打造數(shù)據(jù)生態(tài),成立了CDO,統(tǒng)一數(shù)據(jù)平臺(tái)事業(yè)群,專(zhuān)門(mén)投入研發(fā)大數(shù)據(jù)平臺(tái)的相關(guān)工具,包含計(jì)算存儲(chǔ)平臺(tái)、周邊的調(diào)度系統(tǒng)、元數(shù)據(jù)血緣系統(tǒng)、數(shù)據(jù)質(zhì)量管理系統(tǒng)、還有DQC等;
這個(gè)狀態(tài)持續(xù)到2013年4月, 這時(shí)出現(xiàn)了一個(gè)新的挑戰(zhàn),Hadoop集群的上限是5000個(gè)節(jié)點(diǎn),按照當(dāng)時(shí)數(shù)據(jù)增長(zhǎng)數(shù)據(jù)的推算,集群存儲(chǔ)即將撞墻,但是基于當(dāng)時(shí)的狀況,ODPS無(wú)法完全替代Hadoop,于是當(dāng)時(shí)啟動(dòng)了一個(gè)規(guī)模非常龐大的項(xiàng)目,叫做“5K項(xiàng)目”,同時(shí)進(jìn)行云梯一和云梯二的跨機(jī)房集群項(xiàng)目,當(dāng)時(shí)世界上沒(méi)有任何一家公司具備跨機(jī)房的能力,存在非常大的技術(shù)挑戰(zhàn),最后項(xiàng)目歷經(jīng)近5個(gè)月的周期,攻克大量技術(shù)難點(diǎn),項(xiàng)目取得了成功;
在“5K項(xiàng)目”成功的同時(shí),ODPS架構(gòu)逐步成熟,于是全集團(tuán)又啟動(dòng)了一個(gè)規(guī)模更龐大的項(xiàng)目,叫做“登月項(xiàng)目”,將全集團(tuán)的數(shù)據(jù)加工應(yīng)用全部搬移到ODPS,項(xiàng)目一直持續(xù)到2015年,Hadoop正式下線,淘寶大數(shù)據(jù)徹底進(jìn)入ODPS時(shí)代,整個(gè)數(shù)據(jù)的生態(tài)圈也越來(lái)越豐富,同時(shí),阿里云開(kāi)始對(duì)外提供云服務(wù),其中大數(shù)據(jù)解決方案作為其中重要的組成部分,也開(kāi)始對(duì)外提供;
時(shí)間回到2013年時(shí),當(dāng)時(shí)淘寶數(shù)據(jù)團(tuán)隊(duì)的每個(gè)成員都在忙于應(yīng)對(duì)各類(lèi)需求,每天都有做不完的各類(lèi)報(bào)表,當(dāng)時(shí)為了解救自己,數(shù)據(jù)團(tuán)隊(duì)開(kāi)始摸索探索新的數(shù)據(jù)服務(wù)模式,思考如何解決數(shù)據(jù)冗余、口徑統(tǒng)一、數(shù)據(jù)交換、用戶(hù)自助等一系統(tǒng)問(wèn)題,最終通過(guò)一段時(shí)間思考和摸索,開(kāi)始研發(fā)孔明燈產(chǎn)品,針對(duì)不同的數(shù)據(jù)角色形成了一套完整的數(shù)據(jù)解決方案,如下:
圖6 孔明燈解決方案
孔明燈產(chǎn)品的出現(xiàn),對(duì)傳統(tǒng)的開(kāi)發(fā)模式做了個(gè)升級(jí),對(duì)整個(gè)大數(shù)據(jù)建設(shè)也起到了非常好的管理作用,當(dāng)時(shí)在淘寶內(nèi)部,覆蓋了大部分的業(yè)務(wù)BU,對(duì)數(shù)據(jù)使用成本的降低,釋放了大量的人力,同時(shí)也吸引了外部用戶(hù)高德地圖、阿里健康基于這套體系進(jìn)行大數(shù)據(jù)建設(shè);
2014年,集團(tuán)公共層項(xiàng)目啟動(dòng),集團(tuán)內(nèi)的各個(gè)數(shù)據(jù)團(tuán)隊(duì),開(kāi)始進(jìn)行數(shù)據(jù)內(nèi)容重構(gòu)和整合,同時(shí),CCO正式成立,七公來(lái)到CCO帶領(lǐng)技術(shù)團(tuán)隊(duì),薛奎來(lái)到CCO帶領(lǐng)數(shù)據(jù)倉(cāng)庫(kù)團(tuán)隊(duì),CCO也基于ODPS啟動(dòng)公共層建設(shè)項(xiàng)目,集成了包括淘系、1688、ICBU、AE相關(guān)的服務(wù)數(shù)據(jù),公共層建設(shè)的同時(shí)完成了登月項(xiàng)目,并且與DIC團(tuán)隊(duì)、RDC團(tuán)隊(duì)協(xié)同建設(shè)了服務(wù)數(shù)據(jù)門(mén)戶(hù)DIGO產(chǎn)品;
今天,數(shù)據(jù)在阿里巴巴已經(jīng)深入到每個(gè)角落,阿里云有強(qiáng)大的算法團(tuán)隊(duì)、大批的數(shù)據(jù)接口人、分析師,每天的工作都與數(shù)據(jù)產(chǎn)生關(guān)聯(lián),隨著人工智能的不斷深入使用,業(yè)務(wù)系統(tǒng)的不斷創(chuàng)新迭代,對(duì)數(shù)據(jù)的采集、加工、應(yīng)用又提出了新的要求,如何更好的提供數(shù)據(jù)服務(wù),面對(duì)未來(lái)我們需要思考更多,數(shù)據(jù)將進(jìn)入一個(gè)新的時(shí)代-數(shù)據(jù)智能時(shí)代。
來(lái)源:中國(guó)統(tǒng)計(jì)網(wǎng)
聯(lián)系客服