当前位置: 首页 > news >正文

ClickHouse AST is too big 报错问题处理记录

ClickHouse AST is too big 报错问题处理记录

    • 问题描述
    • 问题分析
    • 解决方案
      • 1、修改系统配置
      • 2、修改业务逻辑

问题描述

项目中统计报表的查询出现 AST is too big 问题,报错信息如下:
在这里插入图片描述

问题分析

报错信息显示 AST is too big
AST 表示查询语法树中的最大元素数。 如果超出,则抛出异常。 默认情况下是10,000,项目上配置了 50000,但还是不够用。

解决方案

1、修改系统配置

user.xml 配置文件中,添加如下配置

<max_ast_elements>10000000</max_ast_elements>
<max_expanded_ast_elements>10000000</max_expanded_ast_elements>

2、修改业务逻辑

查询过长的话,查询性能也会很差。相比于修改系统配置,修改业务代码更优。
因为查询SQL中拼接的条件太多,导致查询SQL过长,所以通过将查询条件拆分成多段,分段查询,减少查询条件的同时也可以缩短查询SQL,既可以防止查询SQL过长,也可以提升查询性能。最后如果觉得分段后遍历查询响应时间较长的话,可以通过线程池使用多线程来减少响应耗时。

http://www.lryc.cn/news/131575.html

相关文章:

  • DPDK系列之二十七DIDO
  • 《游戏编程模式》学习笔记(七)状态模式 State Pattern
  • 博客系统之功能测试
  • CJS和 ES6 的语法区别
  • ArcGIS Pro如何制作不规则形状图例
  • 微软Win11 Dev预览版Build23526发布
  • 【NEW】视频云存储EasyCVR平台H.265转码配置增加分辨率设置
  • 【数据结构】如何用队列实现栈?图文详解(LeetCode)
  • Linux 虚拟机Ubuntu22.04版本通过远程连接连接不上,输入ifconfig只能看到127.0.0.1的解决办法
  • C语言刷题训练DAY.9
  • CTFHub php://input
  • React Native expo项目修改应用程序名称
  • unity 之Transform组件(汇总)
  • 基于Opencv的虚拟拖拽项目
  • 基于单片机DHT11温湿度NRF2401无线通信控制系统
  • AutoSAR配置与实践(基础篇)2.5 RTE对数据一致性的管理
  • ASP.NET WEB API通过SugarSql连接MySQL数据库
  • 08-微信小程序视图层
  • [机器学习]特征工程:特征降维
  • 12. Docker可视化工具
  • css层叠关系
  • 【Unity实战篇 】| 如何在小游戏中快速接入一个新手引导教程
  • Lookup Singularity
  • idea 本地版本控制 local history
  • 【Freertos基础入门】深入浅出freertos互斥量
  • 皮爷咖啡基于亚马逊云科技的数据架构,加速数据治理进程
  • C++ string类详解
  • 深入浅出Pytorch函数——torch.nn.init.ones_
  • 一、docker及mysql基本语法
  • 【计算机网络】13、ARP 包:广播自己的 mac 地址和 ip