Spark SQL概念学习系列之性能调优
2017-06-05 14:48
363 查看
不多说,直接上干货!
Spark SQL可以通过调用sqlContext.cacheTable("tableName") 或者dataFrame.cache(),将表用一种柱状格式( an inmemory columnar format)缓存至内存中。然后Spark SQL在执行查询任务时,只需扫描必需的列,从而以减少扫描数据量、提高性能。
通过缓存数据,Spark SQL还可以自动调节压缩,从而达到最小化内存使用率和降低GC压力的目的。调用sqlContext.uncacheTable("tableName")可将缓存的数据移出内存。
可通过两种配置方式开启缓存数据功能:
使用SQLContext的setConf方法
执行SQL命令 SET key=value
![](http://ke.dajiangtai.com/content/1936/1.png)
其他调优参数
可以通过配置下表中的参数调节Spark SQL的性能。在后续的Spark版本中将逐渐增强自动调优功能,下表中的参数在后续的版本中或许将不再需要配置。
性能调优
Caching Data In MemorySpark SQL可以通过调用sqlContext.cacheTable("tableName") 或者dataFrame.cache(),将表用一种柱状格式( an inmemory columnar format)缓存至内存中。然后Spark SQL在执行查询任务时,只需扫描必需的列,从而以减少扫描数据量、提高性能。
通过缓存数据,Spark SQL还可以自动调节压缩,从而达到最小化内存使用率和降低GC压力的目的。调用sqlContext.uncacheTable("tableName")可将缓存的数据移出内存。
可通过两种配置方式开启缓存数据功能:
使用SQLContext的setConf方法
执行SQL命令 SET key=value
![](http://ke.dajiangtai.com/content/1936/1.png)
其他调优参数
可以通过配置下表中的参数调节Spark SQL的性能。在后续的Spark版本中将逐渐增强自动调优功能,下表中的参数在后续的版本中或许将不再需要配置。
![](http://ke.dajiangtai.com/content/1936/2.png)
相关文章推荐
- Spark SQL概念学习系列之DataFrame与RDD的区别
- Spark-SparkSQL深入学习系列四(转自OopsOutOfMemory)
- Spark-SparkSQL深入学习系列九(转自OopsOutOfMemory)
- Oracle SQL性能优化系列学习二
- Spark入门实战系列--6.SparkSQL(中)--深入了解SparkSQL运行计划及调优
- Spark入门实战系列--6.SparkSQL(中)--深入了解运行计划及调优
- Spark Streaming 教程文档--概述、基本概念、性能调优
- Spark入门实战系列--6.SparkSQL(中)--深入了解SparkSQL运行计划及调优
- 第147课:Spark面试经典系列之Shuffle的性能调优问题
- 第147课: Spark面试经典系列之Shuffle的性能调优问题
- Spark-SparkSQL深入学习系列五(转自OopsOutOfMemory)
- Spark-SparkSQL深入学习系列十(转自OopsOutOfMemory)
- 大数据Spark “蘑菇云”行动补充内容第70课: Spark SQL代码实战和性能调优 4个spark sql调优技巧有用!!!!
- hadoop+hbase+hive+Spark环境性能调优---安装系列九
- Spark Sql性能测试及调优
- 《Spark商业案例与性能调优实战100课》第9课:商业案例之通过Spark SQL 下两种不同方式实现口碑最佳和最热门电影比较
- Spark-SparkSQL深入学习系列六(转自OopsOutOfMemory)
- Spark-SparkSQL深入学习系列十一(转自OopsOutOfMemory)
- Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
- Oracle SQL性能优化系列学习一