自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

大數(shù)據(jù)
當(dāng)前這個數(shù)據(jù)時代,各領(lǐng)域各業(yè)務(wù)場景時時刻刻都有大量的數(shù)據(jù)產(chǎn)生,如何理解大數(shù)據(jù),對這些數(shù)據(jù)進行有效的處理成為很多企業(yè)和研究機構(gòu)所面臨的問題。本文將從大數(shù)據(jù)的基礎(chǔ)特性開始,進而解釋分而治之的處理思想。

 當(dāng)前這個數(shù)據(jù)時代,各領(lǐng)域各業(yè)務(wù)場景時時刻刻都有大量的數(shù)據(jù)產(chǎn)生,如何理解大數(shù)據(jù),對這些數(shù)據(jù)進行有效的處理成為很多企業(yè)和研究機構(gòu)所面臨的問題。本文將從大數(shù)據(jù)的基礎(chǔ)特性開始,進而解釋分而治之的處理思想,最后介紹一些流行的大數(shù)據(jù)技術(shù)和組件,讀者能夠通過本文了解大數(shù)據(jù)的概念、處理方法和流行技術(shù)。  

[[284173]]

什么是大數(shù)據(jù)?

大數(shù)據(jù),顧名思義,就是擁有龐大體量的數(shù)據(jù)。關(guān)于什么是大數(shù)據(jù),如何定義大數(shù)據(jù),如何使用大數(shù)據(jù)等一系列問題,不同領(lǐng)域背景的朋友理解各不相同。IBM將大數(shù)據(jù)歸納為5個V[^1],涵蓋了大數(shù)據(jù)絕大多數(shù)的特性。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)
大數(shù)據(jù)的5個V
  • Volume:數(shù)據(jù)量大,從TB(1,024 GB)、PB(1,024 TB)、EB(1,024 PB)、ZB(1,024 EB)甚至到Y(jié)B(1,024 ZB)。紐約證交所每天產(chǎn)生的交易數(shù)據(jù)大約在TB級,瑞士日內(nèi)瓦附近的大型強子對撞機每年產(chǎn)生的數(shù)據(jù)約為PB級,而目前全球數(shù)據(jù)總量已經(jīng)在ZB級,相當(dāng)于 1,000,000 PB,也就是大家更熟悉的10億 TB。基于更大規(guī)模的數(shù)據(jù),我們可以對某個研究對象的歷史、現(xiàn)狀和未來有更加全面的了解。
  • Velocity:數(shù)據(jù)產(chǎn)生速度快,所要求的處理速度和時效性高,因為時間就是金錢。金融市場的交易數(shù)據(jù)必須以秒級的速度進行處理,搜索和推薦引擎需要在分鐘級將實時新聞推送給用戶。更快的數(shù)據(jù)處理速度,讓我們基于新的數(shù)據(jù)上做更加實時的決策。
  • Variety:數(shù)據(jù)類型繁多,包括數(shù)字、文字、圖片、視頻等不同的數(shù)據(jù)形式,也包括來自社交網(wǎng)絡(luò)、視頻網(wǎng)站、可穿戴設(shè)備以及各類傳感器的數(shù)據(jù)。數(shù)據(jù)可能是Excel里高度結(jié)構(gòu)化的數(shù)據(jù),也可能是圖片和視頻這種非結(jié)構(gòu)化的數(shù)據(jù)。
  • Veracity:數(shù)據(jù)真實性。一方面,數(shù)據(jù)并非天然具有高價值,一些異常值會被摻雜進來,例如,統(tǒng)計偏差、人的情感影響、天氣、經(jīng)濟因素甚至謊報數(shù)據(jù)等。另一方面,數(shù)據(jù)源類型不同,數(shù)據(jù)源多樣,如何將這些多元異構(gòu)數(shù)據(jù)連接、匹配、清洗和轉(zhuǎn)化,形成具有高置信度的數(shù)據(jù)是一項非常有挑戰(zhàn)的工作。
  • Value:數(shù)據(jù)價值。我們研究和利用大數(shù)據(jù)的最終目的是提供更有價值的決策支持,基于以上提到的四個V,挖掘大數(shù)據(jù)的深層價值。

在數(shù)據(jù)分析領(lǐng)域,研究對象的全部被稱為總體(Population),總體包含大量的數(shù)據(jù),甚至說數(shù)據(jù)可能是無限的。比如調(diào)查15個國家的國民的誠信情況,所有國民是總體。很多情況下,我們無法保證能收集和分析總體的所有數(shù)據(jù),因此研究者一般基于研究對象的一個子集進行數(shù)據(jù)分析。樣本(Sample)是從總體中抽取的個體,是研究對象的子集,通過對樣本的調(diào)查和分析,研究者可以推測總體的情況。在誠信調(diào)查的案例中,我們可以在每個國家抽取一部分國民作為樣本,以此推測該國國民的誠信水平。

在大數(shù)據(jù)技術(shù)成熟之前,受限于數(shù)據(jù)收集、存儲和分析能力,樣本數(shù)量相對較小,大數(shù)據(jù)技術(shù)的出現(xiàn)讓數(shù)據(jù)存儲和分析能力不再是瓶頸,研究者可以在更大規(guī)模的數(shù)據(jù)上,以更快地速度進行數(shù)據(jù)分析。但數(shù)據(jù)并非天然有價值,如何讓數(shù)據(jù)點石成金非常有挑戰(zhàn)。在誠信調(diào)查中,如果我們直接詢問樣本對象:“你是否謊報了自己和家庭的資產(chǎn)以獲取更大的金融借貸額度?”十之八九,我們得不到真實的答案,但我們可以綜合多種渠道來分析該問題,比如結(jié)合樣本對象的工作經(jīng)歷、征信記錄等數(shù)據(jù)。

可見,大數(shù)據(jù)具有更大的數(shù)據(jù)量、更快的速度、更多的數(shù)據(jù)類型的特點。在一定的數(shù)據(jù)真實性基礎(chǔ)上,大數(shù)據(jù)技術(shù)最終為數(shù)據(jù)背后的價值服務(wù)。

隨著大數(shù)據(jù)技術(shù)的發(fā)展,數(shù)據(jù)的復(fù)雜性越來越高,有人在這5個V的基礎(chǔ)上,又提出了一些補充,比如增加了動態(tài)性(Vitality),強調(diào)整個數(shù)據(jù)體系的動態(tài)性;增加了可視性(Visualization),強調(diào)數(shù)據(jù)的顯性化展現(xiàn);增加了合法性(Validity),強調(diào)數(shù)據(jù)采集和應(yīng)用的合法性,特別是對于個人隱私數(shù)據(jù)的合理使用等;增加了數(shù)據(jù)在線(Online),強調(diào)數(shù)據(jù)永遠在線,能隨時調(diào)用和計算。

分布式計算 分而治之

計算機誕生之后,一般是在單臺計算機上處理數(shù)據(jù)。大數(shù)據(jù)時代到來后,一些傳統(tǒng)的數(shù)據(jù)處理方法無法滿足大數(shù)據(jù)的處理需求,將一組計算機組織到一起形成一個集群,利用集群的力量來處理大數(shù)據(jù)的工程實踐逐漸成為主流方案。這種使用集群進行計算的方式被稱為分布式計算,當(dāng)前幾乎所有的大數(shù)據(jù)系統(tǒng)都是在集群進行分布式計算。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

分而治之的算法思想

分布式計算的概念聽起來很高深,其背后的思想十分樸素,即分而治之(Divide and Conquer),又被稱為分治法。分治法將一個原始問題分解為子問題,多個子問題分別在多臺機器上求解,借助必要的數(shù)據(jù)交換和合并策略,將子結(jié)果匯總即可求出最終結(jié)果。具體而言,不同的分布式計算系統(tǒng)所使用的算法和策略根據(jù)所要解決的問題各有不同,但基本上都是將計算拆分,把子問題放到多臺機器上,分而治之地計算求解。分布式計算的每臺機器(物理機或虛擬機)又被稱為一個節(jié)點。

分布式計算在科研界已經(jīng)有很多比較成熟的方案,其中比較有名的有消息傳遞接口(Message Passing Interface,MPI)和MapReduce。

MPI

MPI是一個老牌分布式計算框架,主要解決節(jié)點間數(shù)據(jù)通信的問題。在前MapReduce時代,MPI是分布式計算的業(yè)界標(biāo)準(zhǔn)。MPI程序現(xiàn)在依然廣泛運行在全球各大超級計算中心、大學(xué)、政府和軍隊下屬研究機構(gòu)中,許多物理、生物、化學(xué)、能源、航空航天等基礎(chǔ)學(xué)科的大規(guī)模分布式計算都依賴MPI。

分治法將問題切分成子問題,在不同節(jié)點上分而治之地求解,MPI提供了一個在多進程多節(jié)點間進行數(shù)據(jù)通信的方案,因為絕大多數(shù)情況下,在中間計算和最終合并的過程中,需要對多個節(jié)點上的數(shù)據(jù)進行交換和同步。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

 

MPI并行計算示意圖

MPI中最重要的兩個操作為數(shù)據(jù)發(fā)送(Send)和數(shù)據(jù)接收(Recv),Send表示將本進程中某塊數(shù)據(jù)發(fā)送給其他進程,Recv表示接收其他進程的數(shù)據(jù)。上圖展示了MPI架構(gòu)在4臺服務(wù)器上并行計算的示意圖。在實際的代碼開發(fā)過程中,用戶需要自行設(shè)計分治算法,將復(fù)雜問題切分為子問題,手動調(diào)用MPI庫,將數(shù)據(jù)發(fā)送給指定的進程。

MPI能夠在很細的粒度上控制數(shù)據(jù)的通信,這是它的優(yōu)勢,同時也是它的劣勢,因為細粒度的控制意味著從分治算法設(shè)計到數(shù)據(jù)通信到結(jié)果匯總都需要編程人員手動控制。有經(jīng)驗的程序員可以對程序進行底層優(yōu)化,取得成倍的速度提升。但如果對計算機和分布式系統(tǒng)沒有太多經(jīng)驗,編碼、調(diào)試和運行MPI程序的時間成本極高,加上數(shù)據(jù)在不同節(jié)點上不均衡和通信延遲等問題,一個節(jié)點進程失敗將會導(dǎo)致整個程序失敗,因此,MPI對于大部分程序員來說簡直就是噩夢。

并非所有的編程人員都能熟練掌握MPI編程,衡量一個程序的時間成本,不僅要考慮程序運行的時間,也要考慮程序員學(xué)習(xí)、開發(fā)和調(diào)試的時間。就像C語言運算速度極快,但是Python語言卻更受歡迎一樣,MPI雖然能提供極快的分布式計算加速,但不太接地氣。

MapReduce

為了解決分布式計算學(xué)習(xí)和使用成本高的問題,研究人員提出了更簡單易用的MapReduce編程模型[^2]。MapReduce是Google 2004年提出的一種編程范式,比起MPI將所有事情交給程序員控制不同,MapReduce編程模型只需要程序員定義兩個操作:map和reduce。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

 

使用MapReduce制作三明治

網(wǎng)絡(luò)上有很多MapReduce的介紹和解釋,這里我們用三明治的制作過程對MapReduce進行了分解。假設(shè)我們需要大批量地制作三明治,三明治的每種食材可以分別單獨處理,map階段將原材料在不同的節(jié)點上分別進行處理,生成一些中間食材,shuffle階段將不同的中間食材進行組合,reduce最終將一組中間食材組合成為三明治成品??梢钥吹?,這種map + shuffle + reduce的方式就是分而治之思想的一種實現(xiàn)。

基于MapReduce編程模型,不同的團隊分別實現(xiàn)了自己的大數(shù)據(jù)框架:Hadoop是最早的一種開源實現(xiàn),如今已經(jīng)成為大數(shù)據(jù)領(lǐng)域的業(yè)界標(biāo)桿,之后又出現(xiàn)了Spark和Flink。這些框架提供了編程接口和API,輔助程序員存儲、處理和分析大數(shù)據(jù)。

比起MPI,MapReduce編程模型將更多的中間過程做了封裝,程序員只需要將原始問題轉(zhuǎn)化為更高層次的API,至于原始問題如何切分為更小的子問題、中間數(shù)據(jù)如何傳輸和交換、如何將計算伸縮擴展到多個節(jié)點等一系列細節(jié)問題可以交給大數(shù)據(jù)框架來解決。因此,MapReduce相對來說學(xué)習(xí)門檻更低,使用更方便,編程開發(fā)速度更快。

批處理和流處理 

數(shù)據(jù)與數(shù)據(jù)流 

在大數(shù)據(jù)的5V定義中我們已經(jīng)提到,數(shù)據(jù)的容量大且產(chǎn)生速度快。從時間維度上來講,數(shù)據(jù)源源不斷地產(chǎn)生,形成一個無界的數(shù)據(jù)流(Unbounded Stream)。例如我們每時每刻的運動數(shù)據(jù)都會累積到手機傳感器上,金融交易隨時隨地發(fā)生著,傳感器會持續(xù)監(jiān)控并生成數(shù)據(jù)。數(shù)據(jù)流中的某段有界數(shù)據(jù)流(Bounded Stream)可以組成一個數(shù)據(jù)集。我們通常所說的對某份數(shù)據(jù)進行分析,指的是對某個數(shù)據(jù)集進行分析。隨著數(shù)據(jù)的產(chǎn)生速度越來越快,數(shù)據(jù)源越來越多,人們對時效性的重視程度越來越高,如何處理數(shù)據(jù)流成了大家更為關(guān)注的問題。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

 

數(shù)據(jù)與數(shù)據(jù)流

批處理

批處理(Batch Processing)是對一批數(shù)據(jù)進行處理。我們身邊批量計算比比皆是,最簡單的批量計算例子有:微信運動每天晚上有一個批量任務(wù),把用戶好友一天所走的步數(shù)統(tǒng)計一遍,生成排序結(jié)果后推送給用戶;銀行信用卡中心每月賬單日有一個批量任務(wù),把一個月的消費總額統(tǒng)計一次,生成用戶月度賬單;國家統(tǒng)計局每季度對經(jīng)濟數(shù)據(jù)做一次統(tǒng)計,公布季度GDP增速??梢?,批量任務(wù)一般是對一段時間的數(shù)據(jù)聚合后進行處理。對于數(shù)據(jù)量龐大的應(yīng)用,如微信運動、銀行信用卡等情景,一段時間內(nèi)積累的數(shù)據(jù)總量非常大,計算非常耗時。

批量計算的歷史可以追溯的計算機剛剛起步的上世紀(jì)60年代,當(dāng)前應(yīng)用最為廣泛的當(dāng)屬數(shù)據(jù)倉庫的ETL(Extract Transform Load)數(shù)據(jù)轉(zhuǎn)化工作,如以O(shè)racle為代表的商業(yè)數(shù)據(jù)倉庫和以Hadoop/Spark為代表的開源數(shù)據(jù)倉庫。

流處理

如前文所說,數(shù)據(jù)其實是以流(Stream)的方式持續(xù)不斷地產(chǎn)生著,流處理(Stream Processing)就是對數(shù)據(jù)流進行處理。時間就是金錢,對數(shù)據(jù)流進行分析和處理,獲取實時數(shù)據(jù)價值越發(fā)重要。個人用戶每晚看一次微信運動排名覺得是一個比較舒適的節(jié)奏,但是對于金融界來說,時間是以百萬、千萬甚至上億為單位的金錢!雙十一電商大促銷,管理者要以秒級的響應(yīng)時間查看實時銷售業(yè)績、庫存信息以及與競品的對比結(jié)果,以爭取更多的決策時間;股票交易要以毫秒級的速度來對新信息做出響應(yīng);風(fēng)險控制要對每一份欺詐交易迅速做出處理,以減少不必要的損失;網(wǎng)絡(luò)運營商要以極快速度發(fā)現(xiàn)網(wǎng)絡(luò)和數(shù)據(jù)中心的故障等等。以上這些場景,一旦出現(xiàn)故障,造成了服務(wù)的延遲,損失都難以估量,因此,響應(yīng)速度越快,越能減少損失,增加收入。而IoT物聯(lián)網(wǎng)和5G通信的興起將為數(shù)據(jù)生成提供更完美的底層技術(shù)基礎(chǔ),海量的數(shù)據(jù)在IoT設(shè)備上采集生成,并通過更高速的5G通道傳輸?shù)椒?wù)器,更龐大的實時數(shù)據(jù)流將洶涌而至,流式處理的需求肯定會爆炸式增長。

代表性大數(shù)據(jù)技術(shù)

如前文所述,MapReduce編程模型的提出為大數(shù)據(jù)分析和處理開創(chuàng)了一條先河,之后陸續(xù)涌現(xiàn)出了Hadoop、Spark和Flink等大數(shù)據(jù)框架。

Hadoop

2004年,Hadoop的創(chuàng)始人受MapReduce編程模型等一系列論文的啟發(fā),對論文中提及的思想進行了編程實現(xiàn)。Hadoop的名字來源于創(chuàng)始人Doug Cutting兒子的玩具大象。由于創(chuàng)始人Doug Cutting當(dāng)時加入了雅虎,并在此期間支持了大量Hadoop的研發(fā)工作,因此Hadoop也經(jīng)常被認為是雅虎開源的一款大數(shù)據(jù)框架。時至今日,Hadoop不僅僅是整個大數(shù)據(jù)領(lǐng)域的先行者和領(lǐng)導(dǎo)者,更形成了一套圍繞Hadoop的生態(tài)系統(tǒng),Hadoop和它的生態(tài)是絕大多數(shù)企業(yè)首選的大數(shù)據(jù)解決方案。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

Hadoop生態(tài)

盡管Hadoop生態(tài)中的組件眾多,其核心組件主要有三個:

  • Hadoop MapReduce:Hadoop版本的MapReduce編程模型,可以處理海量數(shù)據(jù),主要面向批處理。
  • HDFS:HDFS全稱為Hadoop Distributed File System,是Hadoop提供的分布式文件系統(tǒng),有很好的擴展性和容錯性。
  • YARN:YARN是Yet Another Resource Negotiator的縮寫,是Hadoop生態(tài)系統(tǒng)中的資源調(diào)度器,可以管理一個Hadoop集群,并為各種類型的大數(shù)據(jù)任務(wù)分配計算資源。

這三大組件中,數(shù)據(jù)存儲在HDFS上,由MapReduce負責(zé)計算,YARN負責(zé)集群的資源管理。除了三大核心組件,Hadoop生態(tài)圈還有很多其他著名的組件:

  • Hive:借助Hive,用戶可以編寫SQL語句來查詢HDFS上的結(jié)構(gòu)化數(shù)據(jù),SQL會被轉(zhuǎn)化成MapReduce執(zhí)行。
  • HBase:HDFS上的數(shù)據(jù)量非常龐大,但訪問和查詢速度比較慢,HBase可以提供給用戶毫秒級的實時查詢服務(wù),是一個基于HDFS的分布式數(shù)據(jù)庫。
  • Storm:Strom是一款實時計算框架,主要負責(zé)流處理。
  • Zookeeper:Hadoop生態(tài)圈很多組件使用動物來命名,形成了一個大型動物園,Zookeeper是這個動物園的管理者,主要負責(zé)分布式環(huán)境的協(xié)調(diào)。

Spark

Spark于2009年誕生于加州大學(xué)伯克利分校,2013年被捐獻給Apache基金會。Spark是一款大數(shù)據(jù)計算框架,其初衷是改良Hadoop MapReduce的編程模型和執(zhí)行速度。與Hadoop相比,Spark的改進主要有兩點:

  • 易用性:比起MPI,MapReduce模型更友好,但仍然不夠方便,因為并不是所有計算任務(wù)都可以簡單拆分成map和reduce,有可能為了解決一個問題,要設(shè)計多個MapReduce任務(wù),任務(wù)之間相互依賴,整個程序非常復(fù)雜,導(dǎo)致代碼的可讀性差。Spark提供更加方便易用的接口,提供Java、Scala、Python和R幾種語言的API,支持SQL、機器學(xué)習(xí)和圖計算,覆蓋了絕大多數(shù)大數(shù)據(jù)計算的場景。
  • 速度快:Hadoop的map和reduce之間的中間結(jié)果都需要落地到磁盤上,而Spark盡量將大部分計算放在內(nèi)存中,加上Spark的有向無環(huán)圖優(yōu)化,在官方的基準(zhǔn)測試中,Spark比Hadoop快一百倍以上。 
一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

Spark生態(tài)

Spark的核心在于計算,主要目的在于優(yōu)化Hadoop MapReduce計算部分,在計算層面提供更細致的服務(wù),比如提供了常用幾種數(shù)據(jù)科學(xué)語言的API,提供了SQL、機器學(xué)習(xí)和圖計算支持,這些服務(wù)都是最終面向計算的。Spark并不能完全取代Hadoop,實際上,Spark融入到了Hadoop生態(tài)圈,成為其中的重要一元。一個Spark任務(wù)很可能依賴HDFS上的數(shù)據(jù),向YARN來申請計算資源,將HBase作為輸出結(jié)果的目的地。當(dāng)然,Spark也可以不用依賴這些Hadoop組件,獨立地完成計算。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

Spark Streaming數(shù)據(jù)流示意圖

Spark主要面向批處理需求,因其優(yōu)異的性能和易用的接口,Spark已經(jīng)是批處理界絕對的王者。Spark Streaming提供了流處理的功能,它的流處理主要基于mini-batch的思想,即將輸入數(shù)據(jù)流拆分成多個批次,每個批次使用批處理的方式進行計算。因此,Spark是一款批量和流式于一體的計算框架。

Flink

Flink是由德國幾所大學(xué)發(fā)起的的學(xué)術(shù)項目,后來不斷發(fā)展壯大,并于2014年末成為Apache頂級項目。Flink主要面向流處理,如果說Spark是批處理界的王者,那么Flink就是流處理領(lǐng)域的冉冉升起的新星。在Flink之前,不乏流式處理引擎,比較著名的有Storm、Spark Streaming,但某些特性遠不如Flink。 

一文讀懂大數(shù)據(jù)概念、處理方法和流行技術(shù)

流處理框架演進史

第一代被廣泛采用的流處理框架是Strom。在多項基準(zhǔn)測試中,Storm的數(shù)據(jù)吞吐量和延遲都遠遜于Flink。Storm只支持"at least once"和"at most once",即數(shù)據(jù)流里的事件投遞只能保證至少一次或至多一次,不能保證只有一次。對于很多對數(shù)據(jù)準(zhǔn)確性要求較高的應(yīng)用,Storm有一定劣勢。第二代非常流行的流處理框架是Spark Streaming。Spark Streaming使用mini-batch的思想,每次處理一小批數(shù)據(jù),一小批數(shù)據(jù)包含多個事件,以接近實時處理的效果。因為它每次計算一小批數(shù)據(jù),因此總有一些延遲。但Spark Streaming的優(yōu)勢是擁有Spark這個靠山,用戶從Spark遷移到Spark Streaming的成本較低,因此能給用戶提供一個批量和流式于一體的計算框架。

Flink是與上述兩代框架都不太一樣的新一代計算框架,它是一個支持在有界和無界數(shù)據(jù)流上做有狀態(tài)計算的大數(shù)據(jù)引擎。它以事件為單位,并且支持SQL、State、WaterMark等特性。它支持"exactly once",即事件投遞保證只有一次,不多也不少,這樣數(shù)據(jù)的準(zhǔn)確性能得到提升。比起Storm,它的吞吐量更高,延遲更低,準(zhǔn)確性能得到保障;比起Spark Streaming,它以事件為單位,達到真正意義上的實時計算,且所需計算資源相對更少。

之前提到,數(shù)據(jù)都是以流的形式產(chǎn)生的。數(shù)據(jù)可以分為有界(bounded)和無界(unbounded),批量處理其實就是一個有界的數(shù)據(jù)流,是流處理的一個特例。Flink基于這種思想,逐步發(fā)展成一個可支持流式和批量處理的大數(shù)據(jù)框架。

經(jīng)過幾年的發(fā)展,F(xiàn)link的API已經(jīng)非常完善,可以支持Java、Scala和Python,并且支持SQL。Flink的Scala版API與Spark非常相似,有Spark經(jīng)驗的程序員可以用一個小時的時間熟悉Flink API。

與Spark類似,F(xiàn)link目前主要面向計算,并且可以與Hadoop生態(tài)高度集成。Spark和Flink各有所長,也在相互借鑒,一邊競爭,一邊學(xué)習(xí),究竟最終誰能一統(tǒng)江湖,我們拭目以待。

小結(jié)

大數(shù)據(jù)一般基于分而治之的思想,分布式地進行計算。經(jīng)過十幾年的發(fā)展,大數(shù)據(jù)生態(tài)圈涌現(xiàn)出一大批優(yōu)秀的組件和框架,這些組件對一些底層技術(shù)做了封裝,提供給程序員簡單易用的API接口。在大數(shù)據(jù)分析和處理領(lǐng)域,Hadoop已經(jīng)發(fā)展成為一個非常成熟的生態(tài)圈,涵蓋了很多大數(shù)據(jù)相關(guān)的基礎(chǔ)服務(wù),Spark和Flink主要針對大數(shù)據(jù)計算,分別在批處理和流處理方向建立了自己的優(yōu)勢。

 

責(zé)任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2014-04-29 09:59:44

2024-12-27 14:45:59

2018-04-03 13:08:31

2019-07-12 11:28:00

元數(shù)據(jù)大數(shù)據(jù)存儲

2023-11-20 14:58:30

人工智能AI Agents

2018-10-30 11:10:05

Flink數(shù)據(jù)集計算

2021-07-05 10:48:42

大數(shù)據(jù)實時計算

2017-05-05 12:59:00

大數(shù)據(jù)物聯(lián)網(wǎng)安全

2022-09-27 13:34:49

splice零拷貝原理

2022-10-20 08:01:23

2021-11-02 10:53:56

Linux機制CPU

2018-03-17 09:00:21

大數(shù)據(jù) 區(qū)塊鏈

2015-03-17 11:28:03

大數(shù)據(jù)黃色小象Hadoop

2023-05-17 16:01:00

物聯(lián)網(wǎng)數(shù)據(jù)治理

2025-04-10 11:47:41

2020-07-27 09:50:52

云原生圖譜

2025-04-10 00:12:00

2017-12-21 14:48:43

數(shù)據(jù)安全數(shù)據(jù)泄漏檢測技術(shù)

2019-01-30 09:30:50

大數(shù)據(jù)互聯(lián)網(wǎng)人工智能

2021-12-02 21:00:07

云計算大數(shù)據(jù)AI
點贊
收藏

51CTO技術(shù)棧公眾號