十余年來(lái),企業(yè)架構(gòu)經(jīng)過(guò)了數(shù)次迭代和變遷,ITPUB是這一切的重要見證者,同樣陪伴了無(wú)數(shù)架構(gòu)師的成長(zhǎng)。10月17日,第十屆中國(guó)系統(tǒng)架構(gòu)師大會(huì)以“十年架構(gòu),成長(zhǎng)之路”為主題,云集了國(guó)內(nèi)CTO、研發(fā)總監(jiān)、高級(jí)系統(tǒng)架構(gòu)師、開發(fā)工程師和IT經(jīng)理等技術(shù)人群,與會(huì)規(guī)模超千人。本屆大會(huì)特設(shè)四大主線,其中,主線二為基于大數(shù)據(jù)平臺(tái)的應(yīng)用實(shí)踐,數(shù)位技術(shù)專家傾囊相授,SACC十年磨礪,涅槃起航!
美團(tuán)點(diǎn)評(píng)高級(jí)技術(shù)專家曾林西:美團(tuán)點(diǎn)評(píng)Spark的演進(jìn)與實(shí)踐
Spark作為美團(tuán)點(diǎn)評(píng)主流的離線大數(shù)據(jù)計(jì)算引擎,在數(shù)倉(cāng)生產(chǎn)、查詢分析、機(jī)器學(xué)習(xí)等領(lǐng)域都有重度使用。曾林西介紹了Spark在美團(tuán)點(diǎn)評(píng)的演進(jìn)過(guò)程以及主要應(yīng)用場(chǎng)景和現(xiàn)狀;對(duì)于Spark任務(wù)管理、交互式開發(fā)、問(wèn)題診斷等需求的平臺(tái)化架構(gòu)選型和建設(shè)思路;基于Spark做數(shù)倉(cāng)生產(chǎn)計(jì)算引擎以及Spark on GPU集群實(shí)現(xiàn)批量深度學(xué)習(xí)預(yù)測(cè)等實(shí)踐過(guò)程遇到的功能性、穩(wěn)定性、性能問(wèn)題對(duì)引擎內(nèi)核進(jìn)行改造的經(jīng)驗(yàn)等內(nèi)容。
從正常運(yùn)行到成熟應(yīng)用場(chǎng)景的落地,美團(tuán)點(diǎn)評(píng)的Spark演進(jìn)之路可以概括為能用、好用、用好三個(gè)階段。整個(gè)演進(jìn)過(guò)程圍繞解決平臺(tái)和接口定義,定位分布式執(zhí)行計(jì)算失敗原因,落地?cái)?shù)據(jù)倉(cāng)庫(kù)生產(chǎn)Spark等問(wèn)題逐一展開,最終提升了整個(gè)Spark引擎的魯棒性。
小米數(shù)據(jù)流平臺(tái)負(fù)責(zé)人夏軍:小米數(shù)據(jù)流服務(wù):大數(shù)據(jù)集成架構(gòu)演化之路
對(duì)大多數(shù)企業(yè)而言,讓數(shù)據(jù)去到該去的地方并發(fā)揮最大的價(jià)值一直是技術(shù)人員窮盡探索的難題。小米有眾多智能終端和設(shè)備,數(shù)據(jù)規(guī)模非常大,對(duì)于數(shù)據(jù)采集和大數(shù)據(jù)集成提出了非常高的要求。其內(nèi)部大數(shù)據(jù)系統(tǒng)眾多,如何高效集成Kafka、OLAP等多個(gè)系統(tǒng)?如何保證數(shù)據(jù)低延遲傳輸?如何實(shí)時(shí)發(fā)現(xiàn)并警報(bào)數(shù)據(jù)流異常?如何量化數(shù)據(jù)流整體鏈路情況等問(wèn)題同樣是小米技術(shù)團(tuán)隊(duì)亟待解決的難題。
基于上述問(wèn)題,小米的數(shù)據(jù)流平臺(tái)共分為三部分:Talos為中間層,小米自研的消息隊(duì)列,主要扮演數(shù)據(jù)中轉(zhuǎn)站的角色,類似于開源組件Kafka;下層為Source或Sink的擴(kuò)展,目標(biāo)是連接大數(shù)據(jù)應(yīng)用場(chǎng)景下的不同平臺(tái);上層依賴底層的數(shù)據(jù)收集進(jìn)行監(jiān)控、分析等工作。整套系統(tǒng)主要應(yīng)用于小米的埋點(diǎn)數(shù)據(jù)收集、實(shí)時(shí)日志分析、泛OLAP場(chǎng)景以及流式計(jì)算等場(chǎng)景。
eBay資深主任工程師郭躍鵬:Apache Griffin - 分布式系統(tǒng)的數(shù)據(jù)質(zhì)量方案
在大數(shù)據(jù)、云計(jì)算、流式計(jì)算為基礎(chǔ)的分布式環(huán)境下,數(shù)據(jù)本身的質(zhì)量問(wèn)題越發(fā)重要。Apache Griffin項(xiàng)目是eBay發(fā)起并貢獻(xiàn)給Apache社區(qū)的數(shù)據(jù)質(zhì)量方案。它試圖提供一套可擴(kuò)展,可伸縮的框架來(lái)解決數(shù)據(jù)質(zhì)量的幾個(gè)典型問(wèn)題:如數(shù)據(jù)的精確性問(wèn)題、一致性問(wèn)題、合法性問(wèn)題、時(shí)效性問(wèn)題、唯一性問(wèn)題以及完整性問(wèn)題。面臨streaming和batch的企業(yè)數(shù)據(jù)環(huán)境,Apache Griffin如何通過(guò)提供一整套的流程來(lái)定義,測(cè)量并匯報(bào)數(shù)據(jù)質(zhì)量,以試圖解決數(shù)據(jù)質(zhì)量問(wèn)題?
在數(shù)據(jù)服務(wù)領(lǐng)域從業(yè)多年,郭躍鵬發(fā)現(xiàn)不少企業(yè)內(nèi)部跨多個(gè)系統(tǒng)和團(tuán)隊(duì)沒有統(tǒng)一的數(shù)據(jù)質(zhì)量視圖,沒有共享平臺(tái)來(lái)管理數(shù)據(jù)質(zhì)量,也沒有近乎實(shí)時(shí)的系統(tǒng)健康狀況報(bào)告,Apache Griffin的初級(jí)需求便誕生了。除了解決上述問(wèn)題,Apache Griffin也支持Streaming,基于Spark2.2.0版本并有新的DSL。之后,該團(tuán)隊(duì)將繼續(xù)優(yōu)化該項(xiàng)目,新增更多連接器并實(shí)現(xiàn)基于拓?fù)涞臄?shù)據(jù)質(zhì)量監(jiān)控(項(xiàng)目開源地址:https://github.com/apache/incubator-griffin)。
百度技術(shù)經(jīng)理張建偉:百度云Spark優(yōu)化及大規(guī)模應(yīng)用
從2003年至今,百度云經(jīng)歷了從分布式搜索系統(tǒng)到如今的可視化分析挖掘、可視化報(bào)表大屏和安全計(jì)算。在這個(gè)過(guò)程中,Spark證明了其大數(shù)據(jù)計(jì)算核心引擎的地位,百度云內(nèi)部也在進(jìn)行全面的Spark化,并本著“開源開放”的原則將研究改進(jìn)成果積極與社區(qū)分享。
目前,百度云內(nèi)部Spark集群規(guī)模在15000臺(tái)左右,團(tuán)隊(duì)進(jìn)行了運(yùn)行時(shí)優(yōu)化、獨(dú)立Shuffle以及純流式等改進(jìn)。在性能優(yōu)化方面,百度云與Intel聯(lián)合開源了OAP項(xiàng)目,其性能提升了大概5倍;插件式易部署;類似傳統(tǒng)數(shù)據(jù)庫(kù)的索引和cache,易于使用。AE(Adaptive Execution)方案主要針對(duì)運(yùn)行時(shí)優(yōu)化,解決Reduce數(shù)量設(shè)置等問(wèn)題。流式shuffle的加入減少了舊 shuffle map merge、reduce pull 時(shí)間消耗等問(wèn)題。如果感興趣,大部分技術(shù)成果都可以通過(guò)開源社區(qū)查詢實(shí)踐。
在本屆SACC大會(huì)的主線二《大數(shù)據(jù)平臺(tái)架構(gòu)實(shí)踐》上半場(chǎng),我們了解了不同企業(yè)在數(shù)據(jù)分析、資源調(diào)度和集群配置等方面的實(shí)踐優(yōu)化。“十年磨一劍,礪得梅花香”,第十屆中國(guó)系統(tǒng)架構(gòu)師大會(huì)準(zhǔn)備了三天傳統(tǒng)技術(shù)大會(huì)演講,兩天深度主題培訓(xùn)