Spark是一種開源集群計算環(huán)境,與Hadoop相似但又有所不同。Apache Spark最初是由加州大學(xué)伯克利分銷的AMP實驗室開發(fā)出來的,后來成為Apache的開源項目之一,作為專門為大規(guī)模數(shù)據(jù)處理而設(shè)計的快速通用型計算引擎來使用。與MapReduce技術(shù)相比,Spark有著多種優(yōu)勢,如提供了統(tǒng)一全面的框架、大大提高了應(yīng)用運行速度、可以快速使用Java等語言來編寫程序等,目前Spark形成一個應(yīng)用廣泛、發(fā)展高速的生態(tài)系統(tǒng)。接下來就讓我們一起來了解下Spark的性能特點、運行模式、運行特點以及體系架構(gòu)等知識。
目錄
1. spark性能特點
2. spark運行模式
3. spark運行特點
4. spark體系架構(gòu)
5. spark與hadoop的關(guān)系
1、專注性。由于高級API剝離了對于集群本身的關(guān)注,所以spark開發(fā)者可以專注于應(yīng)用所需要做的計算本身。 2、速度快。Spark支持復(fù)雜算法和交互式計算,運行速度快。 3、通用性。Spark是一個通用引擎,因此可以用來完成如文本處理、SQL查詢等運算。 4、支持多種資源管理器。如Hadoop YARN、Apache Mesos等管理器都支持使用。
1、spark的運行模式是多種多樣的,并不限于一種,可以按需選擇。 2、以單機方式部署時,spark可以用本地模式運行或者偽分布模式運行。 3、部署在分布式集群時,也可以根據(jù)集群的實際選擇不同的運行模式。底層資源調(diào)度既可以使用spark內(nèi)建的獨立集群運行模式,也可以依賴外部資源調(diào)度框架。
1、除非在外部存儲系統(tǒng)寫入數(shù)據(jù),否則Spark Application就不能跨應(yīng)用共享數(shù)據(jù)。 2、spark的運行和資源管理器是沒有關(guān)系的,只需獲取executor進程并保持通信即可。 3、提交SparkContext的Client需靠近運行Executor的節(jié)點,而且最好在同一個Rack里。 4、Task采用的優(yōu)化機制是數(shù)據(jù)本地性和準側(cè)執(zhí)行。
Spark體系架構(gòu)主要有三個組件。 1、數(shù)據(jù)存儲。Spark使用HDFS文件系統(tǒng)來存儲數(shù)據(jù)。 2、資源管理。Spark有多種不同的部署方式,可以部署在一個單獨服務(wù)器上,也可以部署在分布式計算框架上,如Mesos等。 3、API。Spark提供三種程序設(shè)計語言的API,分別是Java、Scala和Python。開發(fā)者可以利用標準的API接口來創(chuàng)建基于Spark的應(yīng)用。
1、spark自身是沒有提供分布式文件系統(tǒng)的,其分析大部分都需要依賴于Hadoop的分布式文件系統(tǒng),也就是HDFS。 2、Mapreduce是Hadoop的分布式計算模塊,Mapreduce和spark都可以計算數(shù)據(jù),但Mapreduce比spark速度要慢一些,且功能也不如spark豐富。 3、spark可以看作是Hadoop MapReduce的替代品,用來提供一個全面、統(tǒng)一的管理大數(shù)據(jù)用例和需求的解決方案。
Copyright ? 1999-2024 中企動力科技股份有限公司(300.cn)All Rights Reserved
京公網(wǎng)安備11030102010293號 京ICP證010249-2
立即聯(lián)系我
在線咨詢
建站在線咨詢
獲取方案
獲取建站報價/方案
我們聯(lián)系您
微信咨詢
掃一掃添加動力姐姐微信
TOP