GaussDB(DWS)运维 :遇到truncate执行慢,怎么办?

gaussdb,dws,遇到,truncate,执行,怎么办 · 浏览次数 : 175

小编点评

**摘要:truncate执行慢,耗时长达几十到几百秒** **问题:** truncate执行慢,耗时长达几十到几百秒。 **根因:** truncate表被查询表的DML语句阻塞。 **方案:** 1. **保证truncate表和查询表动作的依赖:** - 将truncate语句和查询语句的执行顺序进行调整,以确保truncate语句在查询语句执行之前完成。 2. **定位执行问题:** - 使用 `>` 和 `<` 的条件语句来限制查询的开始时间和结束时间。 - 使用 `like` 运算符来过滤查询语句。 **定位语句:** ```sql SELECT start_time, -- SQL执行开始时间 finish_time, -- SQL执行结束时间 duratuin, -- SQL执行时间,单位ms queryFROM pgxc_wlm_session_infoWHERE start_time >= '2022-12-07 08:30:12' + interval '20 min' -- 开始时间比truncate开始时间提前20min以内AND finish_time <= '2022-12-07 08:30:12' + interval '1 min' -- 结束时间跟truncate结束时间基本一致AND query like '%dwr_tdc_dim_inv_country_reg_d%' -- 查询到了truncate的表输出的query就是影响到truncate语句的语句 ``` **注意:** - 确保 `pgxc_wlm_session_info` 表中包含 `start_time`、`finish_time` 和 `duration` 字段。 - `duration` 字段用于计算执行时间。

正文

摘要:truncate执行慢,耗时长达几十到几百秒,这可怎么破?

本文分享自华为云社区《GaussDB(DWS)运维 -- truncate慢》,作者: 譡里个檔。

【现象】truncate执行慢,耗时长达几十到几百秒

【根因】truncate表被查询表的DML语句阻塞

【方案】建议truncate表和查询表动作的依赖,保证二者串行执行

【定位】假如语句 truncate dwr_tdc_dim_inv_country_reg_d 执行时间过久,且执行的truncate语句的执行开始时间是:2022-12-07 08:30:12

执行结束时间是:2022-12-07 08:40:12

那么可以使用如下SQL查询到这段时间查询到truncate的目标表的查询语句

注:这个语句要在postgres库里面执行

SELECT
 start_time,   -- SQL执行开始时间
 finish_time,  -- SQL执行结束时间
 duratuin,     -- SQL执行时间,单位ms
    query
FROM pgxc_wlm_session_info
WHERE start_time >= '2022-12-07 08:30:12' + interval '20 min' -- 开始时间比truncate开始时间提前20min以内
AND finish_time <= '2022-12-07 08:30:12' + interval '1 min' -- 结束时间跟truncate结束时间基本一致
AND query like '%dwr_tdc_dim_inv_country_reg_d%' -- 查询到了truncate的表

输出的query就是影响到truncate语句的语句。一般finish_time比truncate语句执行时间结束时间略小的语句就是阻塞truncate的语句

 

点击关注,第一时间了解华为云新鲜技术~

与GaussDB(DWS)运维 :遇到truncate执行慢,怎么办?相似的内容:

GaussDB(DWS)运维 :遇到truncate执行慢,怎么办?

摘要:truncate执行慢,耗时长达几十到几百秒,这可怎么破? 本文分享自华为云社区《GaussDB(DWS)运维 -- truncate慢》,作者: 譡里个檔。 【现象】truncate执行慢,耗时长达几十到几百秒 【根因】truncate表被查询表的DML语句阻塞 【方案】建议truncate

【数仓运维实践】关于GaussDB(DWS)单SQL磁盘空间管控

摘要:本文主要讲解数仓运维中遇到单SQL磁盘空间管控问题的解析和方案。 本文分享自华为云社区《GaussDB(DWS)运维 -- 单SQL磁盘空间管控》,作者: 譡里个檔。 【问题描述】 执行部分SQL语句时出现如下报错信息(具体数值可能因为配置有差异),本文针对根因和场景触发场景,确定触发此类问题

GaussDB(DWS)运维:导致SQL执行不下推的改写方案

摘要:本文就针对因USING子句的书写方式可能导致MERGE INTO语句的执行不下推的场景,对USING子句的SQL语句进行改写一遍,整个SQL语句可以下推。 本文分享自华为云社区《GaussDB(DWS)运维 -- values子句做MERGE数据源导致SQL执行不下推的改写方案》,作者: 譡里

2个场景实例讲解GaussDB(DWS)基表统计信息估算不准的处理方案

摘要:通过2个实例场景讲解GaussDB(DWS)运维解决方案。 本文分享自华为云社区《GaussDB(DWS)运维 -- 基表统计信息估算不准的常见场景及处理方案》,作者:譡里个檔。 场景1:基表过滤字段存在的隐式类型时,基表行数估算偏小 这种场景绝大部分场景DWS能够处理,但是如果隐式类型转后的

数仓在线运维:如何进行在线增删CN?

摘要:集群运行过程中,根据集群的综合负载和业务接入情况进行分析:增加CN可以适当降低CPU消耗,增大接入连接数,分散CN节点业务压力,根据实际情况来识别是否要增加CN,如果是提升集群容量和扩展比能力,建议进行扩容操作。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维-在线增

5个高并发导致数仓资源类报错分析

摘要:集群运行过程中,有时候会执行并发量比较高的业务场景,一些数据库没有为这种高并发作业配置合适的参数,会导致作业大量报错,这篇文章让你玩转并发作业。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维 - 高并发导致资源类报错分析解决》,作者:323老四。 集群运行过程中,有

详解GaussDB(DWS)用户监控原理及应用

摘要:本文将聚焦于用户监控的原理及应用进行介绍。 本文分享自华为云社区《GaussDB(DWS)监控工具指南(二)用户级监控》,作者:幕后小黑爪 。 前言 资源监控是整个运维乃至整个产品生命周期重要的一环,事前及时语句发现故障,事后提供详实的数据用于追查定位问题。GaussDB(DWS)整个资源监控

数仓资源管控理论已掌握,是时候实战了

华为云GaussDB(DWS)技术布道师吕鹏博,针对GaussDB(DWS) 资源管控的原理和系统运维实践带来了精彩分享。

GaussDB(DWS)迁移实践丨row_number输出结果不一致

摘要:迁移前后结果集row_number字段值前后不一致,前在DWS上运行不一致。 本文分享自华为云社区《GaussDB(DWS)迁移 - oracle兼容 --row_number输出结果不一致》,作者:譡里个檔 。 【问题表现】 迁移前后结果集row_number字段值前后不一致,前在DWS上运

详解GaussDB(DWS)中的行执行引擎

本文分享自华为云社区《GaussDB(DWS)行执行引擎详解》,作者:yd_227398895。 1.前言 GaussDB(DWS)包含三大引擎,一是SQL执行引擎,用来解析用户输入的SQL语句,生成执行计划,供执行引擎来执行;二是执行引擎,其中包含了行执行引擎和列执行引擎,执行引擎即查询的执行者,