大数据/spark/性能优化
莫言静好、
这个作者很懒,什么都没留下…
展开
-
spark sql 性能优化
一 设置shuffle的并行度我们可以通过属性spark.sql.shuffle.partitions设置shuffle并行度 二 Hive数据仓库建设的时候,合理设置数据类型,比如你设置成INT的就不要设置成BIGINT,减少数据类型不必要的内存开销 三 SQL优化 四 并行的处理查询结果对于Spark SQL查询的结果,如果数据量比较大,比如超过1000条,那么原创 2017-11-12 10:30:12 · 6043 阅读 · 0 评论 -
spark 性能优化
一 性能优化点# 提升并行度,就意味着有更多的分区,也就意味着有更多的task.当然不是越多越好,结合实际情况# 对多次使用的RDD进行缓存,可以减少不必要的计算# 使用序列化的持久化机制,这样可以减少内存占用以及GC开销# Java虚拟机调优# 广播共享数据# 数据本地化# shuffle调优# 使用高性能的序列化类库 二 诊断内存消耗我们应该如何判断原创 2017-11-12 10:31:21 · 503 阅读 · 0 评论 -
spark数据倾斜
一 数据倾斜解决方案原理以及现象分析1.1 数据倾斜原理就是指某些key相关的数据和其他key的数据比例相比较,严重失衡,多太多,那么在task运行的时候每一个task需要处理的数据量就不一样,这样很容易造成,一些task很早就结束了,一些task要运行很久,拖后腿;另外提前运行完的task浪费资源。 1.2根据日志定位数据倾斜的位置和原因出现数据倾斜的原因,基本是因为发生了s原创 2017-11-12 10:31:51 · 411 阅读 · 0 评论 -
spark streaming性能优化
一 数据接收并行度调优通过网络接收数据的时候,比如kafka或者flume,会将数据反序列化,并存储在在Spark内存中。如果数据接收成为系统的瓶颈,那么可以考虑并行化接收数据。1.1除了创建更多输入DStream和Receiver每一个InputDStream都会在某个Worker上的Executor上启动一个Receiver,该Receiver接收一个数据流。因此可以通过创建多个I原创 2017-11-12 10:32:22 · 4658 阅读 · 0 评论