Spark 在内存中处理数据,需要很大的内存容量。如果 Spark 与其它资源需求型服务一同运行在YARN 上,又或者数据块太大以至于不能完全读入内存,此时 Spark 的性能就会有很大的降低,此时Spark可能比不上MapReduce。当对数据的操作只是简单的ETL的时候,Spark比不上MapReduce
大魔王泛泛
2020-02-24
每个数据分片都对应具体物理位置,数据的位置是被blockManager,无论数据是在磁盘,内存还是tacyan,都是由blockManager管理
大魔王泛泛
2020-02-24
一个Spark作业运行时包括一个Driver进程,也是作业的主进程,负责向集群申请资源,生成Stage并调度Task到Executor上
大魔王泛泛
2020-02-24
map:对rdd每个元素转换,文件中每一行的数据返回一个数组对象 flatmap:对rdd每个元素转换,然后再扁平化将所有对象合并成一个对象
大魔王泛泛
2020-02-24
应尽量避免使用reduceByKey、groupByKey、join、dictinct,repartition等会进行shuffle的算子,没有shuffle操作或者仅有较少的shuffle操作的Spark作业,可以大大减少性能开销。
大魔王泛泛
2020-02-24
cache:缓存数据,默认是缓存在内存中,其本质还是调用persist persist:缓存数据,有丰富的数据缓存策略。数据可以保存在内存也可以保存在磁盘中,使用的时候指定对应的缓存级别就可以了。
大魔王泛泛
2020-02-24
driver端的内存溢出 map过程产生大量对象导致内存溢出 数据不平衡导致内存溢出 shuffle后内存溢出 standalone模式下资源分配不均匀导致内存溢出
大魔王泛泛
2020-02-24
在通过spark-submit提交任务时,可以通过添加配置参数来指定 –driver-class-path 外部jar包 –jars 外部jar包
大魔王泛泛
2020-02-24