浅谈Spark应用程序的性能调优
生活随笔
收集整理的這篇文章主要介紹了
浅谈Spark应用程序的性能调优
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
淺談Spark應用程序的性能調優 :http://geek.csdn.net/news/detail/51819
下面列出的這些API會導致Shuffle操作,是數據傾斜可能發生的關鍵點所在?
1. groupByKey?
2. reduceByKey?
3. aggregateByKey?
4. sortByKey?
5. join?
6. cogroup?
7. cartesian?
8. coalesce?
9. repartition?
10. repartitionAndSortWithinPartitions
要避免數據傾斜的出現,一種方法就是選擇合適的key,或者是自己定義相關的partitioner。在Spark中Block使用了ByteBuffer來存儲數據,而ByteBuffer能夠存儲的最大數據量不超過2GB。如果某一個key有大量的數據,那么在調用cache或persist函數時就會碰到spark-1476這個異常。
?盡可能使用reduceByKey, aggregateByKey, foldByKey和combineByKey
轉載于:https://www.cnblogs.com/zhangbojiangfeng/p/6089038.html
總結
以上是生活随笔為你收集整理的浅谈Spark应用程序的性能调优的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 调整内核参数
- 下一篇: 6-2-2:STL之string——st