0


SparkSQL性能优化终极篇

前言

在这里插入图片描述

随着Spark版本的不断迭代,SparkSQL底层使用了各种优化技术,无论方便性、性能都已经超越了RDD。因此SparkSQL已经是最常用的Spark开发方式,这里把常用的SparkSQL性能优化技术进行汇总。

使用缓存

  • 缓存 我们知道spark开发中如果有重复使用dataset/table的时候需要使用缓存来提高性能。比如:spark.catalog.cacheTable("view1") 或者:spark.table("view1").cache() 如果是dataset可以直接用:dataset.cache()> 注意:在一个比较复杂的spark程序中使用了缓存,当不需要的使用一定要记得移除缓存释放掉占用的资源:> spark.catalog.uncacheTable(“view1”)
  • 缓存压缩 建议可以根据实际内存情况调整下面一个参数:spark.conf.set("spark.sql.inMemoryColumnarStorage.compressed", true) 该参数设置为true,Spark会根据数据统计信息,自动为每一列选择单独的压缩编码方式。这样会减少数据检索和内存使用。但是如果内存是足够的,那么默认false就可以&#x

本文转载自: https://blog.csdn.net/Android_xue/article/details/131164748
版权归原作者 SunnyRivers 所有, 如有侵权,请联系我们删除。

“SparkSQL性能优化终极篇”的评论:

还没有评论