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

这篇具有很好参考价值的文章主要介绍了ClickHouse AST is too big 报错问题处理记录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述

项目中统计报表的查询出现 AST is too big 问题,报错信息如下:
ClickHouse AST is too big 报错问题处理记录,clickhouse,clickhouse

问题分析

报错信息显示 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过长,也可以提升查询性能。最后如果觉得分段后遍历查询响应时间较长的话,可以通过线程池使用多线程来减少响应耗时。文章来源地址https://www.toymoban.com/news/detail-659610.html

到了这里,关于ClickHouse AST is too big 报错问题处理记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux-clickhouse启动报错- Unit clickhouse-server.service entered failed state

    注意这行报错: 找到日志目录 假如报警日志很大的话 就查看最近500 1000条就好了 提示这个202308_930387_930387_0文件损坏,结构需要清理 进入文件夹 找到提示的文件夹 虽然文件命名成功了,但是clickhouse还是无法启动,还是类似报错,应该是clickhouse还是会使用这个文件 想着怎么

    2024年02月10日
    浏览(25)
  • 【clickhouse实践】clickhouse如何在查询中对某字段空值设置默认值及对Nullable值的处理

    在ClickHouse中,我们可以使用一些函数来处理可空性(nullable)列。可空列是指允许包含空值(null)的列。在处理可空列时,我们需要考虑如何处理这些空值。以下是几个常用的ClickHouse函数,用于处理可空性列。 IFNULL 函数用于将一个可空性列中的空值替换为指定的默认值。它

    2024年02月12日
    浏览(32)
  • ClickHouse-常见的问题

    场景:纪录遇到的一些问题与解决方案,持续更新。 Code: 62. DB::Exception: Syntax error (Multi-statements are not allowed) 场景:将 json 文件导入到 ClickHouse 命令: 错误信息 解决方案:这个是因为我这里的 --query 里有多条语句导致的,执行多条语句时,需要加多一个参数: -n ,即改成以

    2024年02月16日
    浏览(26)
  • ClickHouse报错:Code: 210. DB::NetException: Connection refused (localhost:9000)

    TNND,我是真的服了,估计玩阿里云集群的兄弟,都会遇到这个个问题。 首先我们来看启动信息: 从上面看,完全看不出问题,别信网上说的什么 端口占用、进程没关 直接开日志 我们截取ERROR日志信息 提取关键信息: 他说连接不上这个端口,好了,我们一般到这就是去查看

    2024年02月11日
    浏览(29)
  • 「从ES到CK 05」clickhouse高效数据处理工具vector

            在完成将公司日志数据从Elasticsearch(下称ES)转战到Clickhouse后,个人认为有必要将过程记录分享。限于篇幅及便于分类组织,我会以一个系列文章的形式记录: 01 《Elasticsearch vs Clickhouse》 02 《Clickhouse的基础知识扫盲》 03 《​Clickhouse多分片多副本集群部署​》 04

    2024年02月03日
    浏览(33)
  • ClickHouse 与 Kafka 整合: 实时数据流处理与分析解决方案

    随着数据量的不断增长,实时数据处理和分析变得越来越重要。ClickHouse 和 Kafka 都是在现代数据技术中发挥着重要作用的工具。ClickHouse 是一个高性能的列式数据库,专为 OLAP 和实时数据分析而设计。Kafka 是一个分布式流处理平台,用于构建实时数据流管道和流处理应用程序

    2024年02月22日
    浏览(38)
  • spark读取、写入Clickhouse以及遇到的问题

    最近需要处理Clickhouse里面的数据,经过上网查找总结一下spark读写Clickhouse的工具类已经遇到的问题点。具体Clickhouse的讲解本篇不做讲解,后面专门讲解这个。 话不多说直接看代码 1.引入依赖: 0.2.4  这个版本用的比较多一点 2.spark对象创建  3.spark读取clickhouse数据:

    2024年02月03日
    浏览(35)
  • ClickHouse中“大列”造成的JOIN的内存超限问题

    “大列”是指单行数据量非常大的列,通常是100KiB以上。这样的列会导致JOIN(通常LEFT JOIN 和 INNER JOIN)出现内存超限的异常。 这里讨论的是常用的JOIN算法:partial merge join 与 hash join。Direct join算法不在本文讨论范围。 内存超限的错误一般长这样: 为了分析“大列”的JOIN运算

    2024年01月22日
    浏览(28)
  • clickhouse(十四、分布式DDL阻塞及同步阻塞问题)

    在clickhouse 集群的操作中,如果同时执行一些重量级变更语句,往往会引起阻塞。 一般是由于节点堆积过多耗时的ddl。然后抛出如下异常 1.查询zookeeper的队列数,节点完成情况。 2.查询mutations表,改更较重操作一般会在这个表记录。 先看能不能是kill MUTATION ,确定一下是不是

    2024年02月11日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包