presto参数优化

耀灵2年前技术文章2440

总体参数

1)session级别的参数配置
query.max-run-time=600s
在终止查询之前,允许在群集上处理查询的最大时间。时间包括分析和计划的时间,也包括在队列中等待的时间,因此本质上这是自创建以来允许查询存在的时间。

query.max-execution-time=600s
在终止查询之前,在集群上主动执行查询的最大允许的时间,与query.max-run-time相比,执行时间不包括队列中的分析、查询规划或等待时间。

2)数据源为hive,可对Hive metastore配置缓存,可根据实际情况设置缓存时长。
#文件/presto/etc/catalog/hive.properties
hive.metastore-cache-ttl 
控制cache的存活时间,默认设为0,表示不启用这种cache机制

hive.metastore-refresh-interval 
控制cache自动刷新的频率,默认为1ms.
适当增大这两个参数也可提高查询效率

3)#控制每个worker上面最大可以提交多少个split,默认是100
#coordinator config.properties文件 work节点共同配置
node-scheduler.max-splits-per-node

#控制每个worker上面最多可以有多少个split处于Pending状态
#coordinator config.properties文件 work节点共同配置
node-scheduler.max-pending-splits-per-task

4)#coordinator config.properties文件和work节点共同配置
task.max-worker-threads 
    说明:一个worker处理split的最大并发度。
    

node-scheduler.max-splits-per-node 
    说明:一个worker处理的最大splits数量 ,超过这个值则task优先发送到其他节点。
    默认值:100 
    建议:如果一个splits处理时间比较短,可适当增加该值。

原参数:

1.png

trino版

query.max-run-time


修改参数


调整配置文件,使其永久生效。

query.max-execution-time

2.png

修改参数

#直接执行set语句
set session query_max_execution_time = value;

eg:


但是只在会话中生效,会话关闭后恢复默认值。

调整配置文件,使其永久生效。

3.png

-------------------------------------------------------------------------------

客户原本配置文件内容

config.properties

4.png

catalog/hive.properties

5.png


修改config.properties配置文件

#在终止查询之前,允许在群集上处理查询的最大时间。时间包括分析和计划的时间,也包括在队列中等待的时间,因此本质上这是自创建以来允许查询存在的时间。
query.max-run-time=600s

#在终止查询之前,在集群上主动执行查询的最大允许的时间,与query.max-run-time相比,执行时间不包括队列中的分析、查询规划或等待时间。
query.max-execution-time=600s

node-scheduler.max-splits-per-node=200

#控制每个worker上面最多可以有多少个split处于Pending状态
node-scheduler.max-pending-splits-per-task=200

#说明:一个worker处理split的最大并发度。
task.max-worker-threads=128

6.png


验证参数生效;

7.png

修改hive.properties配置文件

#控制cache的存活时间,默认设为0s,表示不启用这种cache机制
hive.metastore-cache-ttl=1s 

#控制cache自动刷新的频率,默认为0s.适当增大这两个参数也可提高查询效率
hive.metastore-refresh-interval=1s


8.png

未修改之前查询时间:

9.png

presto进行重启

/opt/cloudera/parcels/presto/bin/launcher restart


相关文章

企业级大数据安全架构(八)

企业级大数据安全架构(八)

前面第七章详细介绍了部署FreeIPA来做kerberos认证,这节接着介绍FreeIPA高可用部署1.FreeIPA高可用配置说明:在安装完一台ipa-server之后,在另一个备份节点部署ipa-...

CDH-集群节点下线

CDH-集群节点下线

1、前期准备确认下线节点确认节点组件信息确认下线节点数据存储大小确定剩余节点存储大小如果下线节点数据存储大小大于剩余节点存储大小,则不能进行下线,可能存在数据丢失的情况2、操作首先确认待下线节点中是否...

SQL Server优化入门系列(二)—— 等待事件

SQL Server优化入门系列(二)—— 等待事件

在上一篇文章中(SQL Server优化入门系列(一)——快速定位阻塞SQL),我们介绍了如何快速定位SQL Server中当前正在执行的SQL,以及被阻塞的SQL。这里,我们将介绍如何通过等待事件来...

MySQL运维实战之Clone插件(10.2)Clone插件原理

MySQL运维实战之Clone插件(10.2)Clone插件原理

clone插件实现clone操作主要分为几个阶段:1、初始阶段。初始阶段,会开启页面跟踪(Page Tracking)。开启页面跟踪后,修改过的页面的编号会被记录下来。页面的修改可分为两个阶段:首先在...

Apache hive 对接达梦数据库FQA

Apache hive 对接达梦数据库FQA

对接中遇到的问题问题1解决办法定义dm_svc.confIME_ZONE=(480) LANGUAGE=(cn) HIVE=(172.16.104.165:5236) [HIVE] KEYWO...

Kubernetes节点与令牌管理

令牌管理查看令牌```Plain Text [root@master ~]# kubeadm token list## **删除令牌**Plain Text [root@master ~]# ku...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。