七牛技术总监陈超:记Spark Summit China 2015
七牛技術(shù)總監(jiān)陳超:記Spark Summit China 2015
Spark Summit China 2015于4月18日在北京國(guó)際會(huì)議中心順利召開。作為本次峰會(huì)的主席,我很榮幸地邀請(qǐng)到了來自Databricks、微軟亞洲研究院、IBM、英特爾、Cloudera、百度、阿里巴巴、騰訊及亞信的Spark開發(fā)者與使用者來分享他們的寶貴經(jīng)驗(yàn)。本文,我將從我的視角來解讀本次Spark峰會(huì)所傳遞出來的信息。下面一起回顧:
Tathagata Das:New Directions for Spark in 2015
從TD(Spark Streaming負(fù)責(zé)人)的第一場(chǎng)分享來看,Spark確實(shí)已經(jīng)開始在大數(shù)據(jù)領(lǐng)域起到中流砥柱的作用了。同時(shí),Spark本身的發(fā)展也相當(dāng)迅猛:2014年,Spark的代碼量從19萬增加到37萬,代碼貢獻(xiàn)者從150多人上升至500多人,對(duì)比之下,Hadoop前進(jìn)的腳步顯然慢了一些。過去一年,Spark的重點(diǎn)基本是在穩(wěn)定性和效率上,當(dāng)然Spark社區(qū)也一直在提供更豐富的Library。而在2015年,Spark的新方向是數(shù)據(jù)科學(xué)與平臺(tái)化。Spark1.3正式發(fā)布了DataFrame,這個(gè)后面連城的分享會(huì)有更詳細(xì)的闡述。Machine Learning Pipeline的出現(xiàn)使得機(jī)器學(xué)習(xí)更加便捷。TD同時(shí)也透露Spark1.4中將引入SparkR,這顯然是給數(shù)據(jù)科學(xué)從業(yè)者注入了一針強(qiáng)心劑。另外一方面,Spark也可以基于DataSource接口無縫接入各個(gè)不同的數(shù)據(jù)源,這不僅給不同數(shù)據(jù)源的使用者提供了更便利的Spark使用方式,更給那些需要從不同數(shù)據(jù)源收集數(shù)據(jù),并結(jié)合起來進(jìn)行分析挖掘的用戶提供了一個(gè)極其簡(jiǎn)單的實(shí)現(xiàn)。最后TD表明,基于Spark的第三方package也發(fā)展迅猛。
周虎城:Spark Ecosystem and Applications inside Microsoft
第二場(chǎng)演講來自微軟亞洲研究院的周虎成,他主要介紹了Spark在微軟內(nèi)部的使用。聽完周虎成的分享后,我本人其實(shí)對(duì)于微軟會(huì)將Spark用的這么深入而略感意外。剛開始時(shí),周虎成就說了一句非常有意思的話——“微軟可能是目前唯一一個(gè)將Spark跑在Windows Server上的用戶”。微軟的Spark生態(tài)系統(tǒng)由Resource Management、Data as a Service、,Spark as a Service 及 App組成,其中data可以支持HDFS、Cosmos、 Azure storage、Entity store及Tachyon。值得一提的是,微軟使用了Zeppelin作為交互式分析工具。此外,Spark Streaming與MLlib在微軟內(nèi)部也有被使用。
王聯(lián)輝:騰訊在Spark上的應(yīng)用與實(shí)踐優(yōu)化
第三位進(jìn)行分享的是騰訊高級(jí)工程師王聯(lián)輝。眾所周知,騰訊在很早之前就開始使用Spark了,在TDW得到了深度運(yùn)用,TDW目前擁有8000多的結(jié)點(diǎn)。在騰訊內(nèi)部,每天由Spark執(zhí)行的任務(wù)數(shù)在10000以上,典型的應(yīng)用場(chǎng)景是:1、預(yù)測(cè)用戶的廣告點(diǎn)擊概率;2、計(jì)算兩個(gè)好友間的共同好友數(shù); 3、用于ETL的SparkSQL和DAG任務(wù)。最后王聯(lián)輝也給出了騰訊在Spark實(shí)踐中的一些優(yōu)化,給大家?guī)砹溯^大的幫助。
連城:四兩撥千斤——Spark SQL結(jié)構(gòu)化數(shù)據(jù)分析
第四場(chǎng)是Databricks工程師、Spark Committer、Spark SQL主要開發(fā)者之一連城帶來的Spark SQL相關(guān)分享。連城給出了一組關(guān)于Spark SQL的開發(fā)者數(shù)據(jù),數(shù)據(jù)表明Spark SQL當(dāng)仁不讓的成為Spark中最活躍的組件,并且也正式在Spark1.3中從alpha版本畢業(yè)。連城主要介紹了DataFrame(DF),他表示,DF的出現(xiàn)使得語言的選擇(這里主要指Scala、Python與Java)變得不那么重要,因?yàn)闊o論你選擇何種語言,DF都有非常優(yōu)秀的性能,并且明顯好過直接針對(duì)原始RDD的編程。最后連城認(rèn)為DataFrame已經(jīng)成了NewRDD,我也比較認(rèn)同這個(gè)觀點(diǎn),相信以后很多場(chǎng)景下,一定都是直接針對(duì)DataFrame的編程。
馬小龍:Spark在百度的工程實(shí)踐分享
第五場(chǎng)由百度資深軟件工程師馬小龍分享Spark在百度的應(yīng)用。百度目前的Spark集群規(guī)模為1500臺(tái)左右,每天的作業(yè)數(shù)在10000左右。比較有趣的是,馬小龍給出了不同語言的API在百度被使用的比例,其中Python占到70%, Scala占到20%,Java僅占比10%。在百度的眾多Spark case中,Tachyon的使用是比較有意思的。百度目前面臨著數(shù)據(jù)節(jié)點(diǎn)和計(jì)算節(jié)點(diǎn)不在同一個(gè)數(shù)據(jù)中心的可能,還有跨數(shù)據(jù)中心訪問延遲大的問題。百度使用Tachyon作為Transparent Cache Layer,冷查詢直接從遠(yuǎn)程存儲(chǔ)節(jié)點(diǎn)讀取數(shù)據(jù),而熱查詢直接從Tachyon讀取。結(jié)果表明,采用Tachyon后,熱查詢的效率提高了10倍以上。
黃明:圖流合壁——基于Spark Streaming和GraphX的動(dòng)態(tài)圖計(jì)算
第六場(chǎng)分享由阿里巴巴淘寶技術(shù)部高級(jí)技術(shù)專家黃明(明風(fēng))帶來,他主要講的是利用Spark Streaming與GraphX進(jìn)行的動(dòng)態(tài)圖計(jì)算相關(guān)的內(nèi)容。有個(gè)小花絮,TD對(duì)明風(fēng)的分享非常感興趣,整個(gè)過程中都在與我交流,他也希望有更多有意思的用法出現(xiàn)。明風(fēng)表示,單純基于GraphX的圖計(jì)算可以對(duì)用戶進(jìn)行社區(qū)劃分,可以更好地為決策提供依據(jù)。但是每天一次離線計(jì)算不及時(shí),沒法快速響應(yīng)業(yè)務(wù),而業(yè)務(wù)需要實(shí)時(shí)對(duì)淘寶的用戶進(jìn)行社群劃分,所以明風(fēng)團(tuán)隊(duì)決定嘗試由實(shí)時(shí)消息與實(shí)時(shí)圖構(gòu)建組成的動(dòng)態(tài)圖模型。通過實(shí)時(shí)效果修正,新的模型體現(xiàn)出了顯著的優(yōu)勢(shì),處理時(shí)間可以控制在一分鐘以內(nèi)。
田鳳占:Spark驅(qū)動(dòng)智能大數(shù)據(jù)分析應(yīng)用
第七場(chǎng)分享由Cloudera的高級(jí)架構(gòu)師田鳳占博士帶來。田博士主要介紹了Cloudera在Spark上所做的努力,并且表示Cloudera已經(jīng)完全擁抱了Spark,全方位支持Spark的發(fā)展。田博士拋出的一個(gè)觀點(diǎn)很有趣:關(guān)注開放標(biāo)準(zhǔn),而不僅僅關(guān)注開源。意思就是廠商需要支持那些被使用最廣泛的組件。
黃潔:Spark優(yōu)化及實(shí)踐經(jīng)驗(yàn)分享
第八場(chǎng)分享由英特爾大數(shù)據(jù)技術(shù)中心研發(fā)經(jīng)理黃潔帶來的Spark優(yōu)化及實(shí)踐經(jīng)驗(yàn)分享。本場(chǎng)分享在會(huì)后帶來了極大的反響,建議每一位Spark使用者都去看下黃潔的這份slide,相信一定會(huì)使你受益匪淺。黃潔從內(nèi)存管理、提高IO及優(yōu)化計(jì)算三方面來闡述如何使Spark更加高效。其中的一些方法為用Tachyon作為Spark的off-heap memory,提供更好的任務(wù)數(shù)據(jù)本地性及優(yōu)化的shuffle實(shí)現(xiàn)。最后黃潔也給出了兩個(gè)可以來評(píng)測(cè)Spark運(yùn)行狀況的工具。
Tathagata Das:The State of the Union of Spark Streaming and the Road Beyond
第九場(chǎng)分享還是來自TD,不過他這次分享的是Spark Streaming相關(guān)內(nèi)容。TD介紹了Streaming的發(fā)展,并且給我們展示了很多使用Spark Streaming的公司,可以看到,Spark Streaming的高質(zhì)量用戶已經(jīng)非常多了。TD尤其強(qiáng)調(diào)了Spark 1.3中release的Kafka Direct Stream API——既然現(xiàn)在Kafka的用戶如此之多,所以更好的支持Kafka就顯得尤為重要。新的Kakfa Direct Stream API使用了Kafka的simple consumer API,不需要receiver并做到零數(shù)據(jù)丟失,而且支持exactly-once語義。
田毅:Spark平臺(tái)在電信運(yùn)營(yíng)商的應(yīng)用實(shí)踐
第十個(gè)進(jìn)行分享的是亞信大數(shù)據(jù)平臺(tái)研發(fā)部門經(jīng)理田毅,其演講內(nèi)容是基于Spark改造用戶標(biāo)簽分析查詢平臺(tái)。改造前,平臺(tái)主要是直接利用SQL從數(shù)據(jù)庫中進(jìn)行查詢,這樣做的直接問題是標(biāo)簽數(shù)量越來越大,數(shù)據(jù)庫負(fù)載過高,擴(kuò)展成本高。因此,田毅團(tuán)隊(duì)利用Spark SQL的External Datasource從外部系統(tǒng)的數(shù)據(jù)表中抽取數(shù)據(jù)后直接分析,大大提升了效率,最后田毅團(tuán)隊(duì)引入了Spark Streaming,使得處理時(shí)間進(jìn)一步縮短。
陳冠誠:基于OpenStack、Docker和Spark打造SuperVessel大數(shù)據(jù)公有云
最后一場(chǎng)分享由IBM中國(guó)研究院高級(jí)研究員陳冠誠帶來的Spark、Docker與OpenStack的結(jié)合實(shí)戰(zhàn)。這可能也是后面發(fā)展的一個(gè)方向,就是將容器技術(shù)與大數(shù)據(jù)框架結(jié)合起來跑,我本人也十分期待后續(xù)更多類似的案例出現(xiàn)。
以上是本次Spark中國(guó)峰會(huì)的各場(chǎng)次摘要,由于篇幅所限,無法做更詳細(xì)的展開,大家可以選擇感興趣的話題去查閱相關(guān)資料,同時(shí)也歡迎討論。
本次峰會(huì)的另一大亮點(diǎn)是報(bào)名企業(yè)的種類非常多,不僅大量的互聯(lián)網(wǎng)公司派遣相關(guān)人員參會(huì),不少傳統(tǒng)企業(yè)也對(duì)Spark表現(xiàn)出了極大的興趣。在上午的峰會(huì)中,會(huì)場(chǎng)兩邊與后面的走道都擠滿了觀眾,這樣的熱情有點(diǎn)出乎我的意料,所以組委會(huì)臨時(shí)決定下午減少現(xiàn)場(chǎng)的桌子,增加一些椅子給各位參會(huì)者。同時(shí),相比去年的峰會(huì),今年的Spark峰會(huì)顯得更加自信。去年,大部分參會(huì)者可能更多是抱著“我能不能用Spark”的心態(tài)來的,而今年參會(huì)者想得更多的是“我怎樣才能更好地使用Spark”。從我與不少現(xiàn)場(chǎng)參會(huì)者的交流來看,大家已經(jīng)非常認(rèn)可Spark了,我們有理由期待Spark成為繼 Hadoop(MapReduce)后新一代大數(shù)據(jù)處理事實(shí)上的標(biāo)準(zhǔn)。在Spark后續(xù)的發(fā)展中,我認(rèn)為DataFrame將毫無疑問成為核心,所以我建議Spark的使用者都來關(guān)注一下DataFrame,另一方面,我也預(yù)計(jì)將會(huì)有越來越多的數(shù)據(jù)科學(xué)家會(huì)選擇使用Spark,而Spark SQL、Spark Steaming及MLlib這三個(gè)組件一定會(huì)有更多融合使用的場(chǎng)景。希望在明年峰會(huì)的時(shí)候,有更多有意思的議題出現(xiàn)。
2015年的峰會(huì)圓滿落幕了,借此機(jī)會(huì)感謝各位講師,感謝各位參會(huì)者,也要感謝主辦方,希望明年我們可以共同辦一屆更加成功的峰會(huì)。
Spark——星星之火,已經(jīng)燎原!?
后記:北京時(shí)間2015年4月28日晚,Databricks在其公司博客宣布了Tungsten項(xiàng)目,這將是自Spark誕生以來內(nèi)核級(jí)別的最大改進(jìn)。同時(shí),據(jù)Reynold透露,Tungsten將在未來兩到三個(gè)release內(nèi)實(shí)現(xiàn)。屆時(shí),Spark的執(zhí)行效率又將有大幅提升!這似乎也在說明著——Spark的優(yōu)化,永不止步!
總結(jié)
以上是生活随笔為你收集整理的七牛技术总监陈超:记Spark Summit China 2015的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 互联网定律
- 下一篇: Project Tungsten:让Sp