spark sql 性能优化
一 设置shuffle的并行度
我们可以通过属性spark.sql.shuffle.partitions设置shuffle并行度
二 Hive数据仓库建设的时候,合理设置数据类型,比如你设置成INT的就不要设置成BIGINT,减少数据类型不必要的内存开销
三 SQL优化
四 并行的处理查询结果
对于Spark SQL查询的结果,如果数据量比较大,比如超过1000条,那么就不要使用collect到driver再处理,使用foreach算子并行处理查询结果
五 缓存表
对于一条SQL语句中可能多次使用到的表,可以对其进行缓存,使用SQLContext.cacheTable(tableName)或者DataFrame.cache即可。Spark SQL会用内存 列存储的格式进行表的缓存。然后SparkSQL就可以仅仅扫描需要使用的列,并且自动优化压缩,来最小化内存使用和GC开销。可以通过spark.sql.inMemoryColumnarStorage.batchSize这个参数,默认10000,配置列存储单位
六 广播JOIN表
spark.sql.autoBroadcastJoinThreshold,默认10485760(10M),在内存够用的情况下,提高其大小,可以将join中的较小的表广播出去,而不用进行网络数据传输
spark sql 性能优化相关推荐
- Spark SQL性能优化
性能优化参数 针对Spark SQL 性能调优参数如下: 代码示例 import java.util.List;import org.apache.spark.SparkConf; import or ...
- 高效sql性能优化极简教程
一,sql性能优化基础方法论 对于功能,我们可能知道必须改进什么:但对于性能问题,有时我们可能无从下手.其实,任何计算机应用系统最终队可以归结为: cpu消耗 内存使用 对磁盘,网络或其他I/O设备的 ...
- 做 SQL 性能优化真是让人干瞪眼
很多大数据计算都是用 SQL 实现的,跑得慢时就要去优化 SQL,但常常碰到让人干瞪眼的情况. 比如,存储过程中有三条大概形如这样的语句执行得很慢: select a,b,sum(x) from T ...
- SQL性能优化案例分析
这段时间做一个SQL性能优化的案例分析, 整理了一下过往的案例,发现一个比较有意思的,拿出来给大家分享. 这个项目是我在项目开展2期的时候才加入的, 之前一期是个金融内部信息门户, 里面有个功能是收集 ...
- 如何进行正确的SQL性能优化
在SQL查询中,为了提高查询的效率,我们常常采取一些措施对查询语句进行SQL性能优化.本文我们总结了一些优化措施,接下来我们就一一介绍. 1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE ...
- Oracle SQL性能优化的40条军规
Oracle SQL性能优化的40条军规 1. SQL语句执行步骤 语法分析> 语义分析> 视图转换 >表达式转换> 选择优化器 >选择连接方式 >选择连接顺序 & ...
- SQL性能优化前期准备-清除缓存、开启IO统计
如果需要进行SQl Server下的SQL性能优化,需要准备以下内容: 一.SQL查询分析器设置: 1.开启实际执行计划跟踪. 2.每次执行需优化SQL前,带上清除缓存的设置SQL. 平常在进行SQL ...
- 想让DBA瞬间崩溃,那就让他去做SQL性能优化
本文分享自华为云社区<做 SQL 性能优化真是让人干瞪眼>,作者: 石臻臻的杂货铺 . 很多大数据计算都是用 SQL 实现的,跑得慢时就要去优化 SQL,但常常碰到让人干瞪眼的情况. 比如 ...
- SQL性能优化常见措施(Lock wait timeout exceeded)
SQL性能优化常见措施 目 录 1.mysql中explain命令使用 2.mysql中mysqldumpslow的使用 3.mysql中修改my.ini配置文件记录日志 4.mysql中如何加索引 ...
最新文章
- web前端学习总结--JQuery
- 双十一高并发场景背后的数据库RDS技术揭秘
- 打开wmware没反应_白酒打开后能存放多久?
- Nginx+Tomcat无法正确获取的域名和ip地址
- openssh漏洞升级修复
- Spring with multiple transaction managers
- h5 右下角浮动按钮_Flutter 浮动按钮-FloatingActionButton的使用
- C++结构体变量的初始化和结构体char数组成员初始化
- 5个Web前端开发软件,零基础入门完全够用了!
- chrome浏览器Flash版本过低解决方法
- PCAN二次开发,用MFC发送一帧CAN消息
- 相关分析——皮尔逊相关系数、t显著性检验及Python实现
- 数据库中的操作(语法)
- cdr 表格自动填充文字_Excel表格设置生成自动填充序号、编号
- Tableau desktop 复制交叉表作为数据源
- 才女!厦大硕士毕业生文言文致谢走红网络,理科生的文学素养令人惊艳
- 研究生数学建模竞赛-无人机在抢险救灾中的优化应用
- spring 容器启动执行重置定时任务
- 支付宝小程序 支付时订单处理失败 报ALI38173
- 二叉排序树详解及实现
热门文章
- java emf 转jpg_java – emf到jpg的转换
- 全站仪与计算机之间的数据传输,必看!全站仪数据传输的三种方式详解,都安排得明明白白(上)...
- 微型计算机机房湿度不宜过大对,2013年计算机等考三级PC技术练习题及答案(1)...
- java高级之泛型详解
- Go语言基础(一)——HelloWorld
- jq中ajax请求跨域,用JQuery实现简单的Ajax跨域请求
- opencv for andriod java代码实现霍夫变化(HoughLinesP)
- matlab 0x1表示什么意思,(x ^ 0x1)!= 0是什么意思?(What does (x ^ 0x1) != 0 mean?)
- 大文件分片上传前端框架_无插件实现大文件分片上传,断点续传
- 都匀中专学计算机,都匀计算机专业中专学校学几年