從Hadoop到Spark,大數(shù)據(jù)技術(shù)發(fā)展概況

加米谷大數(shù)據(jù)張老師
大數(shù)據(jù)從概念走向落地,得益于大數(shù)據(jù)技術(shù)的成熟,尤其是以Hadoop為代表的第一代大數(shù)據(jù)系統(tǒng)框架,為大數(shù)據(jù)在企業(yè)當(dāng)中的現(xiàn)實(shí)落地,提供了穩(wěn)固的技術(shù)支持,而隨著大數(shù)據(jù)的發(fā)展,大數(shù)據(jù)技術(shù)也在更新迭代。

大數(shù)據(jù)從概念走向落地,得益于大數(shù)據(jù)技術(shù)的成熟,尤其是以Hadoop為代表的第一代大數(shù)據(jù)系統(tǒng)框架,為大數(shù)據(jù)在企業(yè)當(dāng)中的現(xiàn)實(shí)落地,提供了穩(wěn)固的技術(shù)支持,而隨著大數(shù)據(jù)的發(fā)展,大數(shù)據(jù)技術(shù)也在更新迭代。今天我們來聊聊大數(shù)據(jù)技術(shù)從Hadoop到Spark的發(fā)展概況。

大數(shù)據(jù)技術(shù)產(chǎn)生背景

大數(shù)據(jù)的應(yīng)用和技術(shù)起源于互聯(lián)網(wǎng),首先是網(wǎng)站和網(wǎng)頁的爆發(fā)式增長,搜索引擎公司最早感受到了海量數(shù)據(jù)帶來的技術(shù)上的挑戰(zhàn),典型的就是Google公司,在很早開始意識到這個問題,也在解決實(shí)際問題當(dāng)中,逐步積累起相當(dāng)寶貴的技術(shù)和經(jīng)驗(yàn)。

而隨后興起的社交網(wǎng)絡(luò)、視頻網(wǎng)站、移動互聯(lián)網(wǎng)的浪潮加劇了這一挑戰(zhàn)。智能手機(jī)的普及,使得互聯(lián)網(wǎng)轉(zhuǎn)向移動互聯(lián)網(wǎng),基于移動端的數(shù)據(jù)增長規(guī)模、速度、多樣性,迫使技術(shù)提升成為更加迫切的需求。

互聯(lián)網(wǎng)企業(yè)發(fā)現(xiàn)新數(shù)據(jù)的增長量、多樣性和對處理時效的要求是傳統(tǒng)數(shù)據(jù)庫、商業(yè)智能縱向擴(kuò)展架構(gòu)無法應(yīng)對的。

Hadoop的產(chǎn)生

在此背景下,谷歌公司率先于2004年提出一套分布式數(shù)據(jù)處理的技術(shù)體系,即分布式文件系統(tǒng)谷歌文件系統(tǒng)(Google file system,GFS)、分布式計(jì)算系統(tǒng)MapReduce和分布式數(shù)據(jù)庫BigTable,以較低成本很好地解決了大數(shù)據(jù)面臨的困境,奠定了大數(shù)據(jù)技術(shù)的基礎(chǔ)。

受谷歌公司論文啟發(fā),Hadoop實(shí)現(xiàn)了自己的分布式文件系統(tǒng)HDFS、分布式計(jì)算系統(tǒng)MapReduce和分布式數(shù)據(jù)庫HBase,并將其進(jìn)行開源,這是大數(shù)據(jù)技術(shù)開源生態(tài)體系的起點(diǎn)。

2008年左右,雅虎最早在實(shí)際環(huán)境中搭建了大規(guī)模的Hadoop集群,這是Hadoop在互聯(lián)網(wǎng)公司使用最早的案例。而此后,Hadoop開始得到更多認(rèn)可,也開始在更多行業(yè)領(lǐng)域得到應(yīng)用。

Spark的到來

早期的大數(shù)據(jù)處理需求,基于Hadoop生態(tài)下,主要依靠MapReduce來實(shí)現(xiàn),而MapReduce的優(yōu)勢,在于離線計(jì)算,在數(shù)據(jù)處理的時效性上,始終算不上表現(xiàn)優(yōu)異。

而互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)的發(fā)展,對于數(shù)據(jù)處理的時效性不斷提出新的要求,而原生的MapReduce計(jì)算引擎,開始被詬病,亟需新的技術(shù)解決方案。

2009年,UCBerkley大學(xué)的AMPLab研發(fā)出了Spark,經(jīng)過5年的發(fā)展,正式替換了Hadoop生態(tài)中MapReduce的地位,開始受到市場重用。至于如今,只要提起大數(shù)據(jù)技術(shù)框架,Hadoop和Spark都一定擁有姓名。

Storm以及Flink

當(dāng)然,數(shù)據(jù)處理的實(shí)時性要求不斷提升,Spark在Hadoop生態(tài)當(dāng)中,可以說是占據(jù)了MapReduce的位置,在MapReduce的基礎(chǔ)上,對數(shù)據(jù)處理時效性做了一次提升。但是從技術(shù)層面來說,Spark并非真正意義上的實(shí)時計(jì)算。

真正意義上實(shí)現(xiàn)了實(shí)時計(jì)算的框架,是在Storm出現(xiàn)之時。Storm從技術(shù)源流上來說,來自Twitter公司,后來也同樣收入Apache進(jìn)行開源。從實(shí)時性這個角度來說,Storm是超出Spark的。

但Spark在實(shí)時流計(jì)算方面,也推出了Spark Streaming,將離線計(jì)算和實(shí)時計(jì)算需求進(jìn)行了兼顧,而良好地集成于Hadoop生態(tài),使得Spark的市場占有率相比Storm,也表現(xiàn)出強(qiáng)勢的競爭力。

到了2013年,流計(jì)算的Flink誕生,對Spark都發(fā)出了挑戰(zhàn)。Flink在誕生之初,就是完全瞄準(zhǔn)實(shí)時流計(jì)算場景的。

Flink的流計(jì)算思想,是數(shù)據(jù)流上的有狀態(tài)的計(jì)算。Flink將有界數(shù)據(jù)集看作是無界數(shù)據(jù)流的一種特例,有界數(shù)據(jù)集也是一種數(shù)據(jù)流,事件流也是一種數(shù)據(jù)流。因此Flink在批處理、流處理、AI、機(jī)器學(xué)習(xí)等多種場景下,表現(xiàn)都非常不錯。

目前在國內(nèi),F(xiàn)link的積極擁護(hù)者,非阿里莫屬,在阿里系產(chǎn)品當(dāng)中,F(xiàn)link已經(jīng)有了非常好的實(shí)踐。近幾年的發(fā)展當(dāng)中,F(xiàn)link也在更多的企業(yè)和產(chǎn)品當(dāng)中得以應(yīng)用,包括攜程、唯品會、滴滴、頭條等。

從Hadoop到Spark,大數(shù)據(jù)技術(shù)發(fā)展概況,以上就為大家做了一個基本的入門介紹了。大數(shù)據(jù)行業(yè)人才緊缺,技能過硬的大數(shù)據(jù)人才尤其受到青睞,想要在大數(shù)據(jù)行業(yè)立足并且有長遠(yuǎn)的發(fā)展,跟上技術(shù)技能的更新迭代趨勢,非常重要。

THEEND

最新評論(評論僅代表用戶觀點(diǎn))

更多
暫無評論