這篇文章主要介紹了優(yōu)酷土豆在大數(shù)據(jù)方面的管理與運(yùn)用,優(yōu)酷著手Hadoop集群應(yīng)用的起步較早,在相關(guān)大數(shù)據(jù)管理的方面也較有經(jīng)驗(yàn),需要的朋友可以參考下
姚鍵是優(yōu)酷土豆集團(tuán)CTO,據(jù)他介紹,優(yōu)酷新上線的首頁頁面上,光是導(dǎo)航欄上的視頻分類就有21個(gè),21個(gè)不同類型的內(nèi)容,這意味著會(huì)有各種不同的用戶來優(yōu)酷看視頻,要想給不同的用戶推薦他們喜歡的視頻,這靠的是一個(gè)叫做“協(xié)同過濾推薦”的技術(shù)。
百度百科上這樣介紹協(xié)同過濾推薦(Collaborative Filtering recommendation):“是在信息過濾和信息系統(tǒng)中正迅速成為一項(xiàng)很受歡迎的技術(shù)。與傳統(tǒng)的基于內(nèi)容過濾直接分析內(nèi)容進(jìn)行推薦不同,協(xié)同過濾分析用戶興趣,在用戶群中找到指定用戶的相似(興趣)用戶,綜合這些相似用戶對某一信息的評(píng)價(jià),形成系統(tǒng)對該指定用戶對此信息的喜好程度預(yù)測。”
這是亞馬遜、谷歌等互聯(lián)網(wǎng)巨頭都在使用的技術(shù)。亞馬遜會(huì)告訴你“買了A商品的顧客也同時(shí)購買了B商品”,Youtube上,一個(gè)視頻播放結(jié)束,馬上就會(huì)出現(xiàn)相關(guān)推薦視頻。
看上去簡單的相關(guān)推薦,其實(shí)在優(yōu)酷的視頻推薦中涉及上百個(gè)參數(shù),每次要調(diào)整參數(shù),都要手動(dòng)調(diào)整十幾甚至幾十個(gè)參數(shù),每天推薦視頻的數(shù)據(jù)模型中要涉及的數(shù)據(jù)高達(dá)幾十億。
一次小小的參數(shù)調(diào)整,帶來的后果,可能是當(dāng)天視頻觀看帶來幾百萬的增長,也可能是在算法穩(wěn)定后的未來幾周,甚至幾個(gè)月帶來視頻觀看量的曲線變化。
當(dāng)然,數(shù)字證實(shí),通過這種協(xié)同過濾推薦給用戶的視頻是靠譜的,因?yàn)樵诤A康囊曨l中尋找自己喜歡的視頻成本是很高的,推薦視頻的打開率也令人滿意。
優(yōu)酷土豆心中的“大數(shù)據(jù)”
數(shù)據(jù)的挖掘、分析,用在推薦視頻上,還只是個(gè)小意思。優(yōu)酷在2010年推出的“優(yōu)酷指數(shù)”把大數(shù)據(jù)精神進(jìn)一步強(qiáng)化,把視頻播放周期、用戶核心特征、用戶播放行為、視頻熱度排行等數(shù)據(jù)進(jìn)行展示。
姚鍵這樣介紹優(yōu)酷指數(shù)誕生的背景:“2010年的時(shí)候,優(yōu)酷在PC互聯(lián)網(wǎng)時(shí)代已經(jīng)成為最有影響力的視頻網(wǎng)站,優(yōu)酷希望能夠在行業(yè)內(nèi)樹立一個(gè)標(biāo)桿,在強(qiáng)化優(yōu)酷品牌的同時(shí),也打造優(yōu)酷指數(shù)這樣一個(gè)概念?!?/P>
今年,優(yōu)酷指數(shù)進(jìn)而演變成“中國網(wǎng)絡(luò)視頻指數(shù)”,加入了土豆網(wǎng)以及移動(dòng)客戶端的視頻數(shù)據(jù),對數(shù)字感興趣的用戶,可以從這個(gè)指數(shù)里讀出很多內(nèi)容。
作為一款平臺(tái)化的產(chǎn)品,“中國網(wǎng)絡(luò)視頻指數(shù)”在優(yōu)酷土豆集團(tuán)中的參考價(jià)值無處不在,從廣告售賣,到版權(quán)購買,再到播放器產(chǎn)品的優(yōu)化,等等,處處都能夠作為指導(dǎo)依據(jù)。
據(jù)姚鍵透露,優(yōu)酷土豆集團(tuán)推出的數(shù)據(jù)報(bào)告給節(jié)目制作方、影視劇公司、第三方分析機(jī)構(gòu)等了解視頻節(jié)目的播放信息,以及觀眾人群的分析提供了依據(jù);在廣告銷售方面,能夠?yàn)閺V告主呈現(xiàn)出用戶行為特征,提供廣告投放價(jià)值的分析;在進(jìn)行版權(quán)購買的時(shí)候,可以根據(jù)指數(shù)的走向來幫助決策;公司內(nèi)部,哪怕是播放器產(chǎn)品的用戶體驗(yàn)優(yōu)化,都可以查看數(shù)據(jù)分析結(jié)果,查看按鈕的擺放和使用頻率等。
這些價(jià)值都是顯而易見的,還有我們在表面看不到的,通過數(shù)據(jù)分析的結(jié)果來指導(dǎo)優(yōu)酷土豆集團(tuán)的自制內(nèi)容。
“比如說優(yōu)酷有很多自制的內(nèi)容,有很多的微電影、綜藝節(jié)目等等,這些播放數(shù)據(jù)可以顯示出哪些題材是用戶喜歡的,用戶看到哪里就看不下去了,在哪里是拖放觀看的,一系列的用戶行為可以清晰地告訴內(nèi)容制作人員,應(yīng)該怎么去剪輯視頻,怎么去選擇內(nèi)容題材?!币︽I說。
其實(shí)這個(gè)過程也是對視頻質(zhì)量進(jìn)行分析的過程,在優(yōu)酷土豆的搜索、推薦中按照視頻質(zhì)量進(jìn)行排序,反過來也提高了推薦成功率。
然而,大數(shù)據(jù)讀出的數(shù)據(jù),其指導(dǎo)意義還遠(yuǎn)不止此。
每部電影、電視劇在播出后都會(huì)有對應(yīng)的數(shù)據(jù),哪些演員受歡迎,哪些題材受追捧,通過分析數(shù)據(jù)就可以慢慢發(fā)現(xiàn)背后的原因,把這個(gè)受歡迎的故事講出來,這就是可見的未來。
敢為人先 優(yōu)酷土豆用Spark完善大數(shù)據(jù)分析
大數(shù)據(jù),一個(gè)似乎已經(jīng)被媒體傳播的過于泛濫的詞匯,的的確確又在逐漸影響和改變著我們的生活。也許有人認(rèn)為大數(shù)據(jù)在中國仍然只是噱頭,但在當(dāng)前中國互聯(lián)網(wǎng)領(lǐng)域,大數(shù)據(jù)以及大數(shù)據(jù)所催生出來的生產(chǎn)力正在潛移默化地推動(dòng)業(yè)務(wù)發(fā)展,并為廣大中國網(wǎng)民提供更加優(yōu)秀的服務(wù)。優(yōu)酷土豆作為國內(nèi)最大的視頻網(wǎng)站,和國內(nèi)其他互聯(lián)網(wǎng)巨頭一樣,率先看到大數(shù)據(jù)對公司業(yè)務(wù)的價(jià)值,早在2009年就開始使用Hadoop集群,隨著這些年業(yè)務(wù)迅猛發(fā)展,優(yōu)酷土豆又率先嘗試了仍處于大數(shù)據(jù)前沿領(lǐng)域的Spark/Shark 內(nèi)存計(jì)算框架,很好地解決了機(jī)器學(xué)習(xí)和圖計(jì)算多次迭代的瓶頸問題,使得公司大數(shù)據(jù)分析更加完善。
MapReduce之痛
提到大數(shù)據(jù),自然不能不提Hadoop。HDFS已然成為大數(shù)據(jù)公認(rèn)的存儲(chǔ),而MapReduce作為其搭配的數(shù)據(jù)處理框架在大數(shù)據(jù)發(fā)展的早期表現(xiàn)出了重大的價(jià)值??捎捎谄湓O(shè)計(jì)上的約束MapReduce只適合處理離線計(jì)算,其在實(shí)時(shí)性上仍有較大的不足,隨著業(yè)務(wù)的發(fā)展,業(yè)界對實(shí)時(shí)性和準(zhǔn)確性有更多的需求,很明顯單純依靠MapReduce框架已經(jīng)不能滿足業(yè)務(wù)的需求了。
優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)技術(shù)總監(jiān)盧學(xué)裕就表示:“現(xiàn)在我們使用Hadoop處理一些問題諸如迭代式計(jì)算,每次對磁盤和網(wǎng)絡(luò)的開銷相當(dāng)大。尤其每一次迭代計(jì)算都將結(jié)果要寫到磁盤再讀回來,另外計(jì)算的中間結(jié)果還需要三個(gè)備份,這其實(shí)是浪費(fèi)?!?/P>
據(jù)悉,優(yōu)酷土豆的Hadoop大數(shù)據(jù)平臺(tái)是從2009年開始采用,最初只有10多個(gè)節(jié)點(diǎn),2012年集群節(jié)點(diǎn)達(dá)到150個(gè),2013年更是達(dá)到300個(gè),每天處理數(shù)據(jù)量達(dá)到200TB。優(yōu)酷土豆鑒于Hadoop集群已經(jīng)逐漸勝任不了一些應(yīng)用,于是決定引入Spark/Shark內(nèi)存計(jì)算框架,以此來滿足圖計(jì)算迭代等的需求。
Spark是一個(gè)通用的并行計(jì)算框架,由伯克利大學(xué)的AMP實(shí)驗(yàn)室開發(fā),Spark已經(jīng)成為繼Hadoop之后又一大熱門開源項(xiàng)目,目前已經(jīng)有英特爾等企業(yè)加入到該開源項(xiàng)目。
“我們大數(shù)據(jù)平臺(tái)對快速需求的響應(yīng)延時(shí),尤其是在商業(yè)智能BI以及產(chǎn)品研究分析等需要多次對大數(shù)據(jù)做Drill Down與Drill Up時(shí),等待成了效率殺手。” 優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)技術(shù)總監(jiān)盧學(xué)裕表示。
用Spark/Shark完善大數(shù)據(jù)分析
目前大數(shù)據(jù)在互聯(lián)網(wǎng)公司主要應(yīng)用在廣告、報(bào)表、推薦系統(tǒng)等業(yè)務(wù)上。在廣告業(yè)務(wù)方面需要大數(shù)據(jù)做應(yīng)用分析、效果分析、定向優(yōu)化等,在推薦系統(tǒng)方面則需要大數(shù)據(jù)優(yōu)化相關(guān)排名、個(gè)性化推薦以及熱點(diǎn)點(diǎn)擊分析等。優(yōu)酷土豆屬于典型的互聯(lián)網(wǎng)公司,目前運(yùn)用大數(shù)據(jù)分析平臺(tái)的主要工作是運(yùn)營分析、機(jī)器學(xué)習(xí)、廣告定向優(yōu)化、搜索優(yōu)化等方面。
優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)技術(shù)總監(jiān)盧學(xué)裕表示:“優(yōu)酷土豆的大數(shù)據(jù)平臺(tái)已經(jīng)用了很多年,突出問題主要包括:第一是商業(yè)智能BI方面,公司的分析師提交任務(wù)之后需要等待很久才得到結(jié)果;第二就是大數(shù)據(jù)量計(jì)算,比如進(jìn)行一些模擬廣告投放之時(shí),計(jì)算量非常大的同時(shí)對效率要求也比較高,用Hadoop消耗資源非常大而且響應(yīng)比較慢;最后就是機(jī)器學(xué)習(xí)和圖計(jì)算的迭代運(yùn)算也是需要耗費(fèi)大量資源且速度很慢?!?/P>
因此,面對復(fù)雜任務(wù)、交互式查詢以及流在線處理時(shí),Hadoop與MapReduce并不適用。Spark/Shark這種內(nèi)存型計(jì)算框架則比較適合各種迭代算法和交互式數(shù)據(jù)分析,可每次將彈性分布式數(shù)據(jù)集(RDD)操作之后的結(jié)果存入內(nèi)存中,下次操作可直接從內(nèi)存中讀取,省去了大量的磁盤IO,效率也隨之大幅提升。優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)大數(shù)據(jù)平臺(tái)架構(gòu)師傅杰表示:“一些應(yīng)用場景并不適合在MapReduce里面去處理。通過對比,我們發(fā)現(xiàn)Spark性能比MapReduce提升很多。”
“比如在圖計(jì)算方面,視頻與視頻之間存在的相似關(guān)系,這就構(gòu)成了一個(gè)圖譜,通過圖譜來做聚類,再給用戶做視頻推薦?!?優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)技術(shù)總監(jiān)盧學(xué)裕表示。
優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)技術(shù)總監(jiān)盧學(xué)裕表示:“我們進(jìn)行過圖計(jì)算方面的測試,在4臺(tái)節(jié)點(diǎn)的Spark集群上用時(shí)只有5.6分鐘,而同規(guī)模的數(shù)據(jù)量,單機(jī)實(shí)現(xiàn)需要80多分鐘,并且內(nèi)存吃滿,單機(jī)無法實(shí)現(xiàn)Scale-Out,不能計(jì)算更大規(guī)模數(shù)據(jù)。”
“在今天,數(shù)據(jù)處理要求非常快。比如優(yōu)酷土豆的一些客戶、廣告商往往臨時(shí)就需要看一下投放效果。所以在前端應(yīng)用不變的情況下,如果能更快的響應(yīng)市場的需要就變得很有競爭力。市場是瞬息萬變的,有一些分析結(jié)果也需要快速響應(yīng)成一個(gè)產(chǎn)品,Spark集成到數(shù)據(jù)平臺(tái)正能發(fā)揮這樣的效果?!?優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)大數(shù)據(jù)平臺(tái)架構(gòu)師傅杰補(bǔ)充道。
據(jù)了解,優(yōu)酷土豆采用Spark/Shark大數(shù)據(jù)計(jì)算框架得到了英特爾公司的幫助,起初優(yōu)酷土豆并不熟悉Spark以及Scala語言,英特爾幫助優(yōu)酷土豆設(shè)計(jì)出具體符合業(yè)務(wù)需求的解決方案,并協(xié)助優(yōu)酷土豆實(shí)現(xiàn)了該方案。此外,英特爾還給優(yōu)酷土豆的大數(shù)據(jù)團(tuán)隊(duì)進(jìn)行了Scala語言、Spark的培訓(xùn)等。
“優(yōu)酷土豆作為國內(nèi)視頻行業(yè)第一家商用部署Spark/Shark方案的公司,從視頻行業(yè)的多樣化分析角度來看是個(gè)非常好的方案。未來,英特爾將會(huì)繼續(xù)與優(yōu)酷土豆在Spark/Shark進(jìn)行合作,包括硬件配置的優(yōu)化以及整體方案的優(yōu)化等”英特爾(中國)有限公司銷售市場部互聯(lián)網(wǎng)及媒體行業(yè)企業(yè)客戶經(jīng)理李志輝介紹道。
未來:將Spark/Shark融入到Hadoop 2.0
對于大數(shù)據(jù)而言,Hadoop已經(jīng)構(gòu)建完成了較為完善的生態(tài)系統(tǒng),特別是Hadoop 2.0版本在推出之后,改善了諸多缺點(diǎn)。而Spark/Shark計(jì)算框架其實(shí)與Hadoop并不沖突,Spark現(xiàn)在已經(jīng)可以直接運(yùn)行在Yarn的框架之上,成為Hadoop生態(tài)系統(tǒng)之中不可或缺的成員。
優(yōu)酷土豆集團(tuán)大數(shù)據(jù)團(tuán)隊(duì)大數(shù)據(jù)平臺(tái)架構(gòu)師傅杰表示:“目前Hadoop 2.0已經(jīng)發(fā)布了release版本,我們已經(jīng)啟動(dòng)了對Hadoop 2.0的升級(jí)預(yù)演。這中間還涉及到我們在1.0版本上修改的一些特性需要遷移和驗(yàn)證,我們希望做到在不影響業(yè)務(wù)的情況下實(shí)現(xiàn)平滑升級(jí),預(yù)計(jì)在明年Q1完成升級(jí)。Hadoop 2.0將會(huì)是非常強(qiáng)大的,不再僅僅是MapReduce,還能融入Spark,能夠讓用戶可以根據(jù)數(shù)據(jù)處理應(yīng)用需求的不同來選擇合適的計(jì)算框架。”