0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

工業(yè)大數(shù)據(jù)處理領(lǐng)域的“網(wǎng)紅”——Apache Spark

格創(chuàng)東智 ? 2018-12-17 10:55 ? 次閱讀

生活離不開水,同樣離不開數(shù)據(jù),我們被數(shù)據(jù)包圍,在數(shù)據(jù)中生活。當(dāng)數(shù)據(jù)越來越多時,就成了大數(shù)據(jù)。


在“中國制造2025”的技術(shù)路線圖中,工業(yè)大數(shù)據(jù)是作為重要突破點來規(guī)劃的,而在未來的十年,以數(shù)據(jù)為核心構(gòu)建的智能化體系會成為支撐智能制造和工業(yè)互聯(lián)網(wǎng)的核心動力。而想要理解大數(shù)據(jù),就需要理解大數(shù)據(jù)相關(guān)的查詢、處理、機器學(xué)習(xí)、圖計算和統(tǒng)計分析等。Apache Spark作為新一代輕量級大數(shù)據(jù)快速處理平臺,集成了大數(shù)據(jù)相關(guān)的各種能力,是理解大數(shù)據(jù)的首選。

簡單來講,Spark就是一個快速、通用的大規(guī)模數(shù)據(jù)處理引擎,各種不同的應(yīng)用,如實時流處理、機器學(xué)習(xí)、交互式查詢等,都可以通過Spark 建立在不同的存儲和運行系統(tǒng)上。今天的格物匯,就帶大家來認(rèn)識一下如日中天、高速發(fā)展的大數(shù)據(jù)處理明星——Spark。

1Spark發(fā)展歷程


  • 2009年,Spark誕生于伯克利大學(xué)AMPLab,最開初屬于伯克利大學(xué)的研究性項目,最開始Spark只是一個實驗性的項目,代碼量非常少,僅有3900行代碼左右,屬于輕量級的框架。

  • 2010年,伯克利大學(xué)正式開源了Spark項目。

  • 2013年6月,Spark成為了Apache基金會下的項目,進入高速發(fā)展期,第三方開發(fā)者貢獻了大量的代碼,活躍度非常高。

  • 2014年2月,Spark以飛快的速度稱為了Apache的頂級項目。

  • 2014年5月底Spark1.0.0發(fā)布。

  • 2016年6月Spark2.0.0發(fā)布

  • 2018年11月 Spark2.4.0 發(fā)布


Spark作為Hadoop生態(tài)中重要的一員,其發(fā)展速度堪稱恐怖,從誕生到成為Apache頂級項目不到五年時間,不過在如今數(shù)據(jù)量飛速增長的環(huán)境與背景下,Spark作為高效的計算框架能收到如此大的關(guān)注也是有所依據(jù)的。

2Spark的特點


速度快

Spark通過使用先進的DAG調(diào)度器、查詢優(yōu)化器和物理執(zhí)行引擎,可以高性能地進行批量及流式處理。使用邏輯回歸算法進行迭代計算,Spark比Hadoop速度快100多倍。


簡單易用

Spark目前支持多種編程語言,比如Java、Scala、Python、R。熟悉其中任一門語言的都可以直接上手編寫Spark程序,非常方便。還支持超過80種高級算法,使用戶可以快速構(gòu)建不同應(yīng)用。并且Spark還支持交互式的Python和Scala的Shell,這意味著可以非常方便的在這些Shell中使用Spark集群來驗證解決問題的方法,而不是像以前一樣,需要打包、上傳集群、驗證等。這對于原型開發(fā)非常重要。


通用性高

Spark 目前主要由四大組件,如下:

  • Spark SQL:SQL on Hadoop,能夠提供交互式查詢和報表查詢,通過JDBC等接口調(diào)用;

  • Spark Streaming::流式計算引擎;

  • Spark MLlib:機器學(xué)習(xí)庫;

  • Spark GraphX:圖計算引擎。

擁有這四大組件,成功解決了大數(shù)據(jù)領(lǐng)域中,離線批處理、交互式查詢、實時流計算、機器學(xué)習(xí)與圖計算等最重要的任務(wù)和問題,這些不同類型的處理都可以在同一應(yīng)用中無縫使用。Spark統(tǒng)一的解決方案非常具有吸引力,畢竟任何公司都想用統(tǒng)一的平臺處理問題,減少開發(fā)和維護的人力成本和部署平臺的物理成本。當(dāng)然還有,作為統(tǒng)一的解決方案,Spark并沒有以犧牲性能為代價。相反,在性能方面Spark具有巨大優(yōu)勢。


可融合性

Spark可以運行在standalone、YARN、Mesos、Kubernetes及EC2多種調(diào)度平臺上。其中Standalone模式不依賴第三方的資源管理器和調(diào)度器,這樣降低了Spark的使用門檻,使得所有人可以非常容易地部署和使用Spark。

Spark可以處理所有Hadoop支持的數(shù)據(jù),包括HDFS、Apach HBase、Apach Kudu、Apach Cassanda等。這對于已部署Hadoop集群的用戶特別重要,因為不需要做任何數(shù)據(jù)遷移就可以使用Spark強大的處理能力。



3Spark相比MapReduce優(yōu)勢

Spark與MapReduce 同為計算框架,但作為后起之秀,Spark借鑒了MapReduce,并在其基礎(chǔ)上進行了改進,使得算法性能明顯優(yōu)于MapReduce,下面大致總結(jié)一下兩者差異:

1)Spark把運算的中間數(shù)據(jù)存放在內(nèi)存,迭代計算效率更高;MapReduce的中間結(jié)果需要落地到磁盤,磁盤io操作多,影響性能。

2)Spark容錯性高,它通過Lineage機制實現(xiàn)RDD算子的高效容錯,某一部分丟失或者出錯,可以通過整個數(shù)據(jù)集的計算流程的血緣關(guān)系來實現(xiàn)重建;MapReduce的話容錯可能只能重新計算了,成本較高。

3)Spark更加通用,Spark提供了transformation和action這兩大類的多個功能算子,操作更為方便;MapReduce只提供了map和reduce兩種操作。

4)Spark框架和生態(tài)更為復(fù)雜,首先有RDD、血緣lineage、執(zhí)行時的有向無環(huán)圖DAG、stage劃分等等,很多時候spark作業(yè)都需要根據(jù)不同業(yè)務(wù)場景的需要進行調(diào)優(yōu)已達到性能要求;MapReduce框架及其生態(tài)相對較為簡單,對性能的要求也相對較弱,但是運行較為穩(wěn)定,適合長期后臺運行。

4Spark與工業(yè)互聯(lián)平臺


工業(yè)互聯(lián)網(wǎng)帶來了工業(yè)數(shù)據(jù)的快速發(fā)展,對于日益增加的海量數(shù)據(jù),傳統(tǒng)單機因本身的軟硬件限制無法應(yīng)對海量數(shù)據(jù)的處理、分析以及深度挖掘,但作為分布式計算框架的Spark卻能輕松應(yīng)付這些場景。在工業(yè)互聯(lián)網(wǎng)平臺上,Spark 既能快速實現(xiàn)工業(yè)現(xiàn)場海量流數(shù)據(jù)的處理轉(zhuǎn)換,又能輕松應(yīng)對工業(yè)大數(shù)據(jù)平臺中海量數(shù)據(jù)的快速批處理分析,自身集成的機器學(xué)習(xí)框架能夠對海量工業(yè)數(shù)據(jù)進行深度挖掘分析,從而幫助管理者進行決策分析。


基于Spark框架自身的優(yōu)良設(shè)計理念以及社區(qū)的蓬勃發(fā)展?fàn)顟B(tài),相信未來Spark會在工業(yè)互聯(lián)網(wǎng)平臺扮演越來越重要的角色。

本文作者:黃歡,格創(chuàng)東智大數(shù)據(jù)工程師 (轉(zhuǎn)載請注明來源及作者)



聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 大數(shù)據(jù)
    +關(guān)注

    關(guān)注

    64

    文章

    8856

    瀏覽量

    137222
  • 智能制造
    +關(guān)注

    關(guān)注

    48

    文章

    5452

    瀏覽量

    76238
  • 工業(yè)互聯(lián)網(wǎng)

    關(guān)注

    28

    文章

    4291

    瀏覽量

    94022
  • SPARK
    +關(guān)注

    關(guān)注

    1

    文章

    105

    瀏覽量

    19859
  • 工業(yè)大數(shù)據(jù)

    關(guān)注

    0

    文章

    72

    瀏覽量

    7821
收藏 人收藏

    評論

    相關(guān)推薦

    FPGA在數(shù)據(jù)處理中的應(yīng)用實例

    FPGA(現(xiàn)場可編程門陣列)在數(shù)據(jù)處理領(lǐng)域有著廣泛的應(yīng)用,其高度的靈活性和并行處理能力使其成為許多高性能數(shù)據(jù)處理系統(tǒng)的核心組件。以下是一些FPGA在
    的頭像 發(fā)表于 10-25 09:21 ?150次閱讀

    實時數(shù)據(jù)處理的邊緣計算應(yīng)用

    實時數(shù)據(jù)處理的邊緣計算應(yīng)用廣泛,涵蓋了多個行業(yè)和領(lǐng)域。以下是一些典型的應(yīng)用場景: 一、工業(yè)制造 在工業(yè)制造領(lǐng)域,邊緣計算技術(shù)被廣泛應(yīng)用于生產(chǎn)
    的頭像 發(fā)表于 10-24 14:11 ?242次閱讀

    spark運行的基本流程

    前言: 由于最近對spark的運行流程非常感興趣,所以閱讀了《Spark大數(shù)據(jù)處理:技術(shù)、應(yīng)用與性能優(yōu)化》一書。通過這本書的學(xué)習(xí),了解了spark的核心技術(shù)、實際應(yīng)用場景以及性能優(yōu)化的
    的頭像 發(fā)表于 07-02 10:31 ?348次閱讀
    <b class='flag-5'>spark</b>運行的基本流程

    Spark基于DPU的Native引擎算子卸載方案

    1.背景介紹 Apache Spark(以下簡稱Spark)是一個開源的分布式計算框架,由UC Berkeley AMP Lab開發(fā),可用于批處理、交互式查詢(
    的頭像 發(fā)表于 06-28 17:12 ?474次閱讀
    <b class='flag-5'>Spark</b>基于DPU的Native引擎算子卸載方案

    工業(yè)大數(shù)據(jù)云平臺在設(shè)備預(yù)測性維護中的作用

    ,只有保證設(shè)備的安全穩(wěn)定運行才能保障生產(chǎn)的持續(xù),質(zhì)量的可靠,提升企業(yè)產(chǎn)品競爭力。 因此,企業(yè)就需要加強對設(shè)備狀況的及時把握,并一定程度上實現(xiàn)工業(yè)設(shè)備預(yù)測性維護。為此,數(shù)之能提供的工業(yè)大數(shù)據(jù)云平臺可以全面接入
    的頭像 發(fā)表于 06-28 15:31 ?222次閱讀

    淺談存內(nèi)計算生態(tài)環(huán)境搭建以及軟件開發(fā)

    一個高效和靈活的平臺,特別適合實時數(shù)據(jù)分析和在線事務(wù)處理。這一環(huán)境的優(yōu)勢在于其極高的數(shù)據(jù)處理速度和效率,顯著減少了數(shù)據(jù)處理時間,并支持大數(shù)據(jù)
    發(fā)表于 05-16 16:40

    工業(yè)大數(shù)據(jù)發(fā)展面臨的問題

    工業(yè)大數(shù)據(jù)作為工業(yè)與數(shù)字經(jīng)濟之間的橋梁紐帶,對加快工業(yè)數(shù)字化轉(zhuǎn)型、推進數(shù)實融合,支撐新型工業(yè)化建設(shè)意義重大。
    的頭像 發(fā)表于 04-16 11:52 ?472次閱讀

    如何利用DPU加速Spark大數(shù)據(jù)處理? | 總結(jié)篇

    SSD速度通過NVMe接口得到了大幅提升,并且網(wǎng)絡(luò)傳輸速率也進入了新的高度,但CPU主頻發(fā)展并未保持同等步調(diào),3GHz左右的核心頻率已成為常態(tài)。 在當(dāng)前背景下Apache Spark大數(shù)據(jù)處理工具中,盡管存儲和網(wǎng)絡(luò)性能的提升極
    的頭像 發(fā)表于 04-02 13:45 ?983次閱讀
    如何利用DPU加速<b class='flag-5'>Spark</b><b class='flag-5'>大數(shù)據(jù)處理</b>? | 總結(jié)篇

    Spark基于DPU Snappy壓縮算法的異構(gòu)加速方案

    一、總體介紹 1.1 背景介紹 Apache Spark是專為大規(guī)模數(shù)據(jù)計算而設(shè)計的快速通用的計算引擎,是一種與 Hadoop 相似的開源集群計算環(huán)境,但是兩者之間還存在一些不同之處,這些不同之處使
    的頭像 發(fā)表于 03-26 17:06 ?713次閱讀
    <b class='flag-5'>Spark</b>基于DPU Snappy壓縮算法的異構(gòu)加速方案

    RDMA技術(shù)在Apache Spark中的應(yīng)用

    背景介紹 在當(dāng)今數(shù)據(jù)驅(qū)動的時代,Apache?Spark已經(jīng)成為了處理大規(guī)模數(shù)據(jù)集的首選框架。作為一個開源的分布式計算系統(tǒng),
    的頭像 發(fā)表于 03-25 18:13 ?1449次閱讀
    RDMA技術(shù)在<b class='flag-5'>Apache</b> <b class='flag-5'>Spark</b>中的應(yīng)用

    基于DPU和HADOS-RACE加速Spark 3.x

    、Python、Java、Scala、R)等特性在大數(shù)據(jù)計算領(lǐng)域被廣泛使用。其中,Spark SQL 是 Spark 生態(tài)系統(tǒng)中的一個重要組件,它允許用戶以結(jié)構(gòu)化
    的頭像 發(fā)表于 03-25 18:12 ?1249次閱讀
    基于DPU和HADOS-RACE加速<b class='flag-5'>Spark</b> 3.x

    工程監(jiān)測領(lǐng)域振弦采集儀的數(shù)據(jù)處理與分析方法探討

    工程監(jiān)測領(lǐng)域振弦采集儀的數(shù)據(jù)處理與分析方法探討 在工程監(jiān)測領(lǐng)域,振弦采集儀是常用的一種設(shè)備,用于測量和記錄結(jié)構(gòu)物的振動數(shù)據(jù)。數(shù)據(jù)處理和分析是
    的頭像 發(fā)表于 01-10 14:44 ?390次閱讀
    工程監(jiān)測<b class='flag-5'>領(lǐng)域</b>振弦采集儀的<b class='flag-5'>數(shù)據(jù)處理</b>與分析方法探討

    數(shù)據(jù)處理

    初學(xué)者想請教一下大家,采集的噪聲信號,想要對采集到的數(shù)據(jù)累計到一定數(shù)量再進行處理,計劃每隔0.2秒進行一次數(shù)據(jù)處理,(得到均方根值等一些特征值)請問大家有什么方法可以實現(xiàn)
    發(fā)表于 01-07 10:11

    基于工業(yè)大數(shù)據(jù)和物聯(lián)網(wǎng)的智能工廠如何實現(xiàn)

    在中國制造2025及工業(yè)4.0技術(shù)的加持下,離散制造業(yè)的流程工業(yè)實現(xiàn)生產(chǎn)設(shè)備網(wǎng)絡(luò)化、生產(chǎn)數(shù)據(jù)可視化、生產(chǎn)現(xiàn)場無人化等現(xiàn)金數(shù)據(jù)應(yīng)用,做到橫向與縱向的集成,實現(xiàn)邊緣到云端的
    的頭像 發(fā)表于 12-25 15:32 ?530次閱讀

    網(wǎng)行波故障預(yù)警與定位裝置的數(shù)據(jù)處理

    今天江蘇宇拓電力來為大家說明一下配網(wǎng)行波故障預(yù)警與定位裝置的數(shù)據(jù)處理。 一、引言 隨著電力系統(tǒng)規(guī)模的擴大和復(fù)雜性的增加,對配電網(wǎng)的可靠性和穩(wěn)定性提出了更高的要求。在此背景下,配網(wǎng)行波故障預(yù)警與定位
    的頭像 發(fā)表于 12-22 11:51 ?1330次閱讀