Spark從入門到精通

2021-10-24 08:01:36 字數 1121 閱讀 6678

spark從入門到精通(一)

什麼是spark

大資料計算框架

離線批處理

大資料體系架構圖(spark)

spark包含了大資料領域常見的各種計算框架:比如spark core用於離線計算,spark sql用於互動式查詢,spark streaming用於實時流式計算,spark mlib用於機器學習,spark graphx用於圖計算

spark主要用於大資料的計算,而hadoop以後主要用於大資料的儲存(比如hdfs、hive、hbase)等,,以及資源排程(yarn)

spark+hadoop的組合是大資料領域最熱門的組合,也是最有前景的組合

spark與mapreduce計算過程,spark基於記憶體進行計算,所以速度更快

spark整體架構圖

spark的特點

速度快:基於記憶體進行計算(當然也有部分計算基於磁碟,比如shuffle)

容易上手開發:spark的基於rdd的計算模型,比hadoop的基於map-reduce的計算模型要更加易於理解,更加易於上手開發,實現各種複雜功能,比如二次排序,topn等複雜操作時,更加便捷

超強的通用性:spark提供了多種計算元件

整合hadoop:spark與hadoop進行了高度的繼承,完成double win

極高的活躍度

hive架構

spark sql實際上不能完全替代hive,以為hive是一種基於hdfs的資料倉儲,並且提供了基於sql模型的,針對儲存了大資料的資料倉儲,進行分布式互動查詢的查詢引擎

嚴格來講,spark sql能夠替代的,是hive的查詢引擎,而不是hive本身,spark本身是不提供儲存的,自然不能替代hive作為資料倉儲的這個功能

hive的查詢引擎,基於mapreduce,必須經過shuffle過程走磁碟,因此速度是非常緩慢的。spark基於記憶體,因此速度達到hive查詢引擎的數倍以上

spark sql相較hive的另乙個特點,就是支援大量不同的資料來源,包括hive、json、parquet、jdbc等等。此外,spark sql由於身處spark技術堆疊內,也是基於rdd來工作,因此可以與spark其他元件無縫整合使用。比如spark sql支援可以直接針對hdfs檔案執行sql語句

storm與spark對比

Spark從入門到精通 一 Spark架構

spark與mapreduce的區別 都是分布式計算框架,spark基於記憶體,mr基於hdfs。spark處理資料的能力一般是mr的十倍以上,spark中除了基於記憶體計算外,還有dag有向無環圖來切分任務的執行先後順序。spark主要分為三大部分 sparkcore 對非結構化資料的處理,rdd...

Nginx從入門到精通

1 nginx配置檔案載入機制 採用nginx s reload命令載入nginx的配置檔案,master程序讀取配置檔案,建立新的worker程序,向老的worker程序傳送shutdown命令。老的worker程序不再接受新的請求,待老的請求處理完成後,就會停掉。2 location匹配機制 當...

scrot 從入門到精通

無論是撰寫技術教程,還是展示桌面或應用,恐怕 scrot 都是必不可少的工具。scrot 是螢幕抓圖工具中的 皎皎 佼佼者,它小巧而不失為強大,精練而不缺少靈活。scrot 主要用在命令列下,它使用 imlib2 庫來抓取並儲存影象。在 ubuntu 中,可以使用sudo apt get insta...