Spark精华问答 | spark性能优化方法
Hadoop再火,火得過Spark嗎?今天我們繼續(xù)關(guān)于Spark的精華問答吧。
1
Q:影響性能的主要因素是什么?
A:網(wǎng)絡(luò)傳輸開銷大
硬件資源利用率低
同一資源的復(fù)用率低
Q:優(yōu)化的方向有哪些?
A:設(shè)置數(shù)據(jù)本地化,減少跨節(jié)點(diǎn)跨機(jī)架的網(wǎng)絡(luò)傳輸開銷
設(shè)置合適的存儲(chǔ)格式,推薦orc,縮短查詢時(shí)間
設(shè)置內(nèi)存計(jì)算的大小和task數(shù)量,根據(jù)集群內(nèi)存和磁盤大小調(diào)整
調(diào)整分區(qū)數(shù)量,提高查詢性能
減少RDD的重復(fù)創(chuàng)建,同時(shí)盡可能復(fù)用已存在的RDD
減少使用shuffle類算子(reduceByKey,join,distinct,repartition)
選擇可替代的最佳算子,reduceByKey替代groupByKey,mapPartitions替代map
避免數(shù)據(jù)傾斜,如map端Join,對數(shù)據(jù)深入理解的前提修改key調(diào)整reduce端的數(shù)據(jù)傾斜
提高spark最大的瓶頸-內(nèi)存
3
Q:優(yōu)化的手段
A:調(diào)優(yōu)參數(shù)雖名目多樣,但最終目的是提高CPU利用率,降低帶寬IO,提高緩存命中率,減少數(shù)據(jù)落盤。?(以下參數(shù)主要用于Spark Thriftserver,僅供參考)
Q:Spark生態(tài)圈介紹
A:Spark力圖整合機(jī)器學(xué)習(xí)(MLib)、圖算法(GraphX)、流式計(jì)算(Spark Streaming)和數(shù)據(jù)倉庫(Spark SQL)等領(lǐng)域,通過計(jì)算引擎Spark,彈性分布式數(shù)據(jù)集(RDD),架構(gòu)出一個(gè)新的大數(shù)據(jù)應(yīng)用平臺(tái)。
??? Spark生態(tài)圈以HDFS、S3、Techyon為底層存儲(chǔ)引擎,以Yarn、Mesos和Standlone作為資源調(diào)度引擎;使用Spark,可以實(shí)現(xiàn)MapReduce應(yīng)用;基于Spark,Spark SQL可以實(shí)現(xiàn)即席查詢,Spark Streaming可以處理實(shí)時(shí)應(yīng)用,MLib可以實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法,GraphX可以實(shí)現(xiàn)圖計(jì)算,SparkR可以實(shí)現(xiàn)復(fù)雜數(shù)學(xué)計(jì)算。
Q:Spark?SQL
A:基于HiveQL與Spark交互的API接口,將一個(gè)數(shù)據(jù)庫表看作一個(gè)RDD進(jìn)行操作
數(shù)據(jù)類型為DataFrame,支持結(jié)構(gòu)化的數(shù)據(jù)文件,Hive表和已存在的RDD
兼容性好,支持nosql數(shù)據(jù)庫
通過內(nèi)存列存儲(chǔ)技術(shù)和字節(jié)碼生成技術(shù)實(shí)現(xiàn)空間占用量,讀取吞吐率和SQL表達(dá)式的優(yōu)化,查詢性能高
小伙伴們沖鴨,后臺(tái)留言區(qū)等著你!
關(guān)于Spark,今天你學(xué)到了什么?還有哪些不懂的?除此還對哪些話題感興趣?快來留言區(qū)打卡啦!留言方式:打開第XX天,答:……
同時(shí)歡迎大家搜集更多問題,投稿給我們!風(fēng)里雨里留言區(qū)里等你~
福利
1、掃描添加小編微信,備注“姓名+公司職位”,加入【云計(jì)算學(xué)習(xí)交流群】,和志同道合的朋友們共同打卡學(xué)習(xí)!
2、公眾號后臺(tái)回復(fù):白皮書,獲取IDC最新數(shù)據(jù)白皮書整理資料!
推薦閱讀:
三十四載Windows崛起之路:?蘋果、可視做過微軟“鋪路石”
面試官:你簡歷中寫用過docker,能說說容器和鏡像的區(qū)別嗎?
2019年技術(shù)盤點(diǎn)容器篇(二):聽騰訊云講講踏入成熟期的容器技術(shù) | 程序員硬核評測
C++、Python、Rust、Scala構(gòu)建編譯器的差異性究竟有多大?
想換行做 5G 的開發(fā)者到底該咋辦?
如何在標(biāo)準(zhǔn)的機(jī)器學(xué)習(xí)流程上玩出新花樣?
獨(dú)家 | Vitalik Buterin:以太坊2.0之跨分片交易
滴滴章文嵩:不僅軟件開源,還向?qū)W界開放數(shù)據(jù)
真香,朕在看了!
總結(jié)
以上是生活随笔為你收集整理的Spark精华问答 | spark性能优化方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: boost::container模块实现
- 下一篇: boost::container_has