Spark
也曾被风温柔以待
微信号 13813031404
展开
-
Spark-Shuffle写过程
ShuffleManager介绍spark之所以比mapReduce的性能高其中一个主要的原因就是对shuffle过程的优化,一方面spark的shuffle过程更好地利用内存(执行内存),另一方面对于shuffle过程中溢写的磁盘文件归并排序和引入索引文件。当然,spark性能高的另一个主要原因还有对计算链的优化,把多步map类型的计算chain在一起,大大减少中间过程的落盘,这也是spar...原创 2019-12-21 20:38:02 · 399 阅读 · 0 评论 -
Spark-Shuffle读过程
shuffle的读过程发生的宽依赖的RDD(如ShuffledRDD)的compute方法被调用的时候。所以先来看ShuffledRDD的compute()方法的源码:// ShuffledRDD.scalaoverride def compute(split: Partition, context: TaskContext): Iterator[(K, C)] = { val dep...原创 2019-12-21 20:43:02 · 518 阅读 · 0 评论 -
Spark-批任务Checkpoint解析
一、概述Checkpoint是什么?Spark在生产环境下经常会面临Tranformations的RDD非常多(例如一个Job中包含1万个RDD)或者具体Tranformation产生的RDD本身计算特别复杂和耗时(例如计算时常超过1~5个小时),此时我们必须考虑对计算结果数据的持久化。如果采用persist把数据放在内存中的话,虽然是最快速的但是也是最不可靠的;如果放在磁盘上也不是完全可...原创 2020-02-16 12:52:11 · 496 阅读 · 0 评论