陳超:我是負(fù)責(zé)大數(shù)據(jù)這一塊的負(fù)責(zé)人我叫陳超,可能大家對(duì)我社區(qū)的ID比較熟悉,我們這次是數(shù)據(jù)為峰,引領(lǐng)技術(shù)先鋒。我的名字是大數(shù)據(jù)生態(tài)的概覽,由于時(shí)間的原因,我會(huì)在我覺(jué)得比較重要的地方,會(huì)多講一些,可能大家不是那么關(guān)注的地方我可能會(huì)跳過(guò),但是我希望能把需要講的都給大家介紹一下。
在大數(shù)據(jù)這一塊,我們最主要的基礎(chǔ)就是我們分布式文件系統(tǒng),我們的HDFS大家都已經(jīng)熟悉了,下面Tachyon,它也是一個(gè)文件系統(tǒng),只不過(guò)它是基于內(nèi)存的一個(gè)文件,它由出品,引用了以后,可以把數(shù)據(jù)全部存在里面,直接從內(nèi)存出去,讓你的效率成倍提高,有些人想說(shuō),內(nèi)存丟失了怎么辦,事實(shí)上面,現(xiàn)在業(yè)內(nèi)幾乎所有基于內(nèi)存的文件系統(tǒng),幾乎都有。在我們Tachyon可以放入數(shù)據(jù),是到你用的時(shí)候才有。
在分布式計(jì)算這一塊,我們最早接受的批量計(jì)算,大家用的最多是MapReduce,效率比較低。我在2003年的時(shí)候在國(guó)內(nèi)推廣Spark2004年慢慢大規(guī)模采用,Spark基于內(nèi)存的基本框架,但是大家現(xiàn)在對(duì)Spark有一個(gè)誤解,完全基于內(nèi)存,事實(shí)上不是,它做了很多改變。另外它還做了一些額外的優(yōu)化,來(lái)保證我們更好的數(shù)據(jù)穩(wěn)定性。第三個(gè)Flink,現(xiàn)場(chǎng)有多少人知道這個(gè)框架,它跟Spark的定位是比較像的,它們都希望走的是爐子,跟Spark有興趣的朋友,我們可以會(huì)下單獨(dú)討論。
接下來(lái),我相信大家對(duì)第四個(gè),Impala更熟悉一些,但是它有去編譯,做了一些代碼生成提高效率。事實(shí)上面,在Facebook也做了一個(gè)類(lèi)似的,它對(duì)知識(shí)是非常好的。另外方面,還支持查一些,你可以認(rèn)為它是一個(gè)插電的設(shè)施,你有什么都可以查,只要有數(shù)據(jù),原始數(shù)據(jù)確實(shí)在某個(gè)地方,也可以查。這一塊,我相信這邊也有不少人在用,首先它使用非常方便速度也比較快,另一方面,更關(guān)鍵的一點(diǎn),它已經(jīng)從不同的框架里面來(lái)學(xué)習(xí)很多的優(yōu)點(diǎn),吸收進(jìn)來(lái),所以說(shuō)大家這邊如果有人學(xué)習(xí)的話,或者想用的話,我建議你們可以從Spark SQL入手,以后大家不會(huì)獲得原始行業(yè)進(jìn)行一個(gè)計(jì)算,而是說(shuō),我們對(duì)它進(jìn)行一個(gè)控制,明顯我能做更多的優(yōu)化。Drill這塊我就不展開(kāi)講。
流式計(jì)算,這一塊大家非常熟悉,我想提醒一下,你用個(gè)的延時(shí)在幾秒左右,很多人拿這個(gè)說(shuō)事,數(shù)據(jù)出來(lái)再到我們Spark Streaming已經(jīng)有不少飲飭了,所以在處理上面,給你帶來(lái)并不是特別大的事。當(dāng)然如果延時(shí)真的非常重要,我必須要考量,那你可以用。還有一個(gè)好處就是說(shuō),它可以用你的批量計(jì)算和時(shí)時(shí)計(jì)算,做批量的時(shí)候,你使用,你用換成其他代碼都是這樣的都不用動(dòng),所以說(shuō)也非常方便。只不過(guò)它是一個(gè)完全基于設(shè)置的方向,它的思路是我的就是為它設(shè)計(jì)的,但是,它認(rèn)為,批量計(jì)算只是時(shí)時(shí)計(jì)算的特例,這是一個(gè)思路。
其實(shí)雅虎出的比較早,代碼更新也非常慢,對(duì)它表現(xiàn)尊敬,出來(lái)也比較早,它主要是針對(duì)于,既然已經(jīng)成為事實(shí)上的標(biāo)準(zhǔn),那用的人,在國(guó)內(nèi)并不是特別多,如果你們有興趣并且說(shuō)你們也是的話,我建議你們可以去看一下。
數(shù)據(jù)收集這塊,是這樣子,F(xiàn)lume用得比較多。第二個(gè)Flunetd做了很多類(lèi)似于統(tǒng)一的數(shù)據(jù)平臺(tái),消息平臺(tái),它可以支持不同的一些插電化的接口,但是這塊,前兩年還可以,這兩天,至少在國(guó)內(nèi)交流起來(lái)并沒(méi)有特別多。Sqoop是一個(gè)很尷尬的處境,它的愿景很美好,類(lèi)似觀點(diǎn),但事實(shí)上面,大多數(shù)的公司,自己更喜歡從去重寫(xiě)這樣一套的框架。Scribe不多講,你也可以跟Sqoop比較。有一個(gè)事我不知道有沒(méi)有公布,用語(yǔ)言,重新寫(xiě)了一套,性能提升了很多,有一天有一篇文章介紹,如果你們用了這套框架,可以查一下文章。Camus一個(gè)用法是,用到我們這上面去是非常方便的。
我說(shuō)了Kafka是一個(gè)概念,概念也非常簡(jiǎn)單,中間是數(shù)據(jù),多數(shù)據(jù)可以讓數(shù)據(jù)進(jìn)行處理,概念比較簡(jiǎn)單。在介紹的時(shí)候,也介紹了,本身是一個(gè)優(yōu)秀的框架,但它可以支持概念,我這邊不多介紹,有興趣可以看一下。最下面NSQ是一個(gè)比較酷的,以前講的時(shí)候,看不到,這種玩意?,F(xiàn)在混的比較多了,總要去看看這個(gè),但是如果對(duì)這個(gè)比較感興趣的話,可以去看看,如果NSQ比較好玩的話,可以聯(lián)系我。我們這邊有很多空間有NSQ。
我們?cè)趦赡昵暗臉?biāo)準(zhǔn),就是Mahout,我不知道有沒(méi)有人民關(guān)注我的微信賬號(hào),去年4月份,我也寫(xiě)了,Mahout已經(jīng)停止接受任何新的算法,投到上去。我現(xiàn)在主要用的是,里面的算法也比較豐富,并且我們有新的,是一個(gè)非??岬臇|西。大大簡(jiǎn)化你從數(shù)據(jù)進(jìn)來(lái),到我們整個(gè)流程結(jié)束。畢竟它也結(jié)合了一些理念在里面。PredictionIO是基于我們的服務(wù)器。最后一個(gè)scikit learn朋友們非常了解,scikit learn本身用的也非常清楚。
圖處理,我先重點(diǎn)講一下第一個(gè)和最后一個(gè),我認(rèn)為到現(xiàn)在為止有三個(gè)產(chǎn)品非常重要,或者其他一些挖掘,事實(shí)上有三個(gè)可以看得了,整個(gè)網(wǎng)絡(luò)非常復(fù)雜,節(jié)點(diǎn)非常多,我要找任意兩個(gè)節(jié)點(diǎn)的最短路徑,第三個(gè)我認(rèn)為也是目前用得最多的。大家想一下,你們這邊咱們會(huì)場(chǎng)里面有這么多人,如果說(shuō)微博我關(guān)注了你,我到你那邊指向了,你你關(guān)注了我可以指向我,想想看如果我們這些互相關(guān)注的人里面,是不是三角形越多,我們社區(qū)就越緊密,三角形越少我們社區(qū)就越松散。我關(guān)注你你關(guān)注我,還是一樣的。像我剛剛講的三個(gè)場(chǎng)景,都需要一個(gè)領(lǐng)導(dǎo)力,所以我認(rèn)為一個(gè)優(yōu)秀的框架不需要讓大家,我認(rèn)為應(yīng)該幫你搞定。
最后一個(gè)你可以把邊、點(diǎn)存在那里,非常簡(jiǎn)單。如果說(shuō)你有圖需求,可以看一下。MongoDB我不講了。Redis也不講了,微博非常好用。對(duì)比一下我相信這里面肯定有這個(gè)的支持者,所以我前端時(shí)間參加回答問(wèn)題的時(shí)候,也是冒著很大的風(fēng)險(xiǎn),萬(wàn)一得罪了也不好。所以說(shuō)看自己的品位,是一個(gè)P2P的構(gòu)造。你們不要去過(guò)于執(zhí)著兩者的區(qū)別上面,他們的數(shù)據(jù)都是基于。你可以認(rèn)為最后是一個(gè),其實(shí)是一樣的,沒(méi)有大家想的差別那么大。
NewSQL不知道這里面有多少人了解曾經(jīng)開(kāi)源過(guò),被某一個(gè)公司收購(gòu)了,直接就再也看不到了。公司大多數(shù)人都在用它的手機(jī)、蘋(píng)果。所以說(shuō)現(xiàn)在注意力就轉(zhuǎn)移了,它不讓我玩,我不能就坐以待斃我得找一個(gè)新的替代品。所以在國(guó)內(nèi)我更喜歡小強(qiáng)DB,打不死的DB?,F(xiàn)在還有一個(gè)比較酷的產(chǎn)品叫做HyperDex,大家了解也非常少,也可以去看一下。
搜索這塊,是這樣,Lucene這不需要講,這本身沒(méi)有什么對(duì)錯(cuò)。ElasticSearch現(xiàn)在生態(tài)圈,支持會(huì)更多一些。到搜索、到展示都是一體化的。所以說(shuō)你讓我個(gè)人建議,我會(huì)建議用ElasticSearch。
OLAP,大家沒(méi)有看到,支持超高圍度。它才開(kāi)展兩、三個(gè)月,還是有些問(wèn)題,用的過(guò)程中,還自己去避免。Zeppelin,在業(yè)內(nèi)上面寫(xiě)一段,下面把結(jié)果呈現(xiàn)出來(lái),包括圖表。
數(shù)據(jù)可視化,這些就看前端你們更喜歡哪個(gè)。
容器在大數(shù)據(jù)領(lǐng)域也避不開(kāi)這個(gè)話題,現(xiàn)在在做Spark,我指的是容器,在座大多數(shù)朋友也需要去關(guān)注一下容器市場(chǎng)。它可能會(huì)對(duì)我們架構(gòu)方式個(gè)思維方式有一定的改變。
調(diào)度不多講,Mesos、YARN、Sparrow,不展開(kāi),你們對(duì)調(diào)度參考一下Sparrow。
幕后英雄,ZooKeeper,第一想法上這個(gè),沒(méi)什么好講的。Praquet存得更少拿得更快。
Lambda架構(gòu)就是這樣,把它們兩個(gè)數(shù)據(jù)結(jié)合起來(lái)去訪問(wèn)。
這個(gè)是我整個(gè)PPT最重要的一頁(yè),其他不多講了,謝謝各位!