- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 Spark性能调优之——JVM调优之原理概述 以及降低cache操作的内存占比
性能调优分成好几块:1.常规性能调优: 分配资源,并行度。。等。2.JVM调优:JVM相关的参数。【没有大家想的那么神,虚】 通常情况下,如果你的硬件配置,基础的JVM的配置,都ok的话,JVM通常不会造成太严重的性能问题,反而更多的是, 在troubleshooting中,JVM占了很重要的位置!! why????? JVM造成 线上的spark作业运行报错
2016-10-31 22:28:35 3447
原创 Spark性能调优之——在实际项目中调节数据本地化等待时长
PROCESS_LOCAL:进程本地化, 代码和数据在同一个进程中,也就是在同一个executor中;计算数据的task由executor执行,数据在executor的BlockManager中;性能最好 NODE_LOCAL:节点本地化, 代码和数据在同一个节点中;比如说,数据作为一个HDFS block块,就在节点上,而task在节点上某个executor中运行;或者是,数
2016-10-31 22:27:01 2758
原创 Spark性能调优之——在实际项目中,使用fastutil优化数据格式
fastutil介绍: fastutil是扩展了Java标准集合框架(Map、List、Set;HashMap、ArrayList、HashSet)的类库,提供了特殊类型的map、set、list和queue; fastutil能够提供更小的内存占用,更快的存取速度;我们使用fastutil提供的集合类,来替代自己平时使用的JDK的原生的Map、List、Set,好处在于,fastutil集合类
2016-10-31 22:26:01 2240
原创 Spark性能调优之——在实际项目中使用Kryo序列化
set(“spark.serializer”,”org.apache.spark.serializer.KryoSerializer”)Java的序列化机制,ObjectOutputStream/ObjectInputStream 对象输入输入流机制,来进行序列化。这种默认序列化机制,的好处在于,处理方便,不需要手动做什么事,只要在算子里面使用的变量,实现Serializable接口的,可序列化即可
2016-10-31 22:24:52 4237
原创 Spark性能调优之——在实际项目中广播大变量
Spark Application Driver 进程,其实就是我们写的Spark作业,打成jar运行起来的进程。比如一个1M的map(随机抽取的map) ,创建1000个副本,网络传输!分到1000个机器上,则占用了1G内存。不必要的网络消耗,和内存消耗。如果你是从哪个表里面读取了一些维度数据,比方说,所有商品的品类的信息,在某个算子函数中使用到100M。1000个task 。100G的数据,网络
2016-10-31 22:23:45 6532 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人