ClickHouse 系列报错

1. ClickHouse 查询时,报错:Memory limit (for query) exceeded: would use 9.38 GiB (attempt to allocate chunk of 135439453 bytes), maximum: 9.31 GiB

1.1 ClickHouse 环境

1.2 报错原因

默认情况下,ClickHouse会限制group by使用的内存量(它使用 hash table来处理group by)。这很容易解决 - 如果你有空闲的内存,增加这个参数

1.3 解决方法

1. 内存足够情况下
SET max_memory_usage = 128000000000; #128G
2. 内存不足情况下

GROUP BY中允许将临时数据转存到磁盘上,以限制对内存的使用

set max_bytes_before_external_group_by=20000000000; #20G,默认值为0,表示在GROUP BY中启动将临时数据转存到磁盘上的内存阈值。

# 使用max_bytes_before_external_group_by时,建议将max_memory_usage设置为它的两倍。这是因为一个聚合需要两个阶段来完成:
#(1)读取数据并形成中间数据
#(2)合并中间数据。临时数据的转存只会发生在第一个阶段。
# 如果没有发生临时文件的转存,那么阶段二将最多消耗与1阶段相同的内存大小。
set max_memory_usage=40000000000; #40G

参考:https://clickhouse.yandex/docs/zh/query_language/select/

原文地址:https://www.cnblogs.com/wuning/p/12156915.html

时间: 2024-10-16 05:24:44

ClickHouse 系列报错的相关文章

WaterDrop 系列报错

1.使用WaterDrop 从kafka中消费数据,写入到ClickHouse 1.1 环境 SPARK2-2.3.0.cloudera4-1.cdh5.13.3.p0.611179 clickhouse-1.1.54236-4.el7.x86_64 waterdrop-1.4.2 waterdrop 配置文件 spark { spark.streaming.batchDuration = 5 spark.app.name = "Waterdrop" spark.executor.in

sqlserver 安装“ 0x8 ”系列报错解决

可能的原因及其解决方案:1,windows installer 4.5 未安装在适合该windows平台的更新包 2,powershell(2.0)   未正确安装. 3,如果是windows server 2008sp1  应该在安装前更新server pakages 3 包 . 然后再尝试安装 4,安装时尽量将iso文件解压安装.

gulp-notify处理报错----gulp系列(二)

上一节,以less为例,入门了gulp,并为任务结构做了抽离. 前端们,gulp该用起来了,简单的demo入门——gulp系列(一) 本节学习下gulp-notify,官方这样解释的: gulp-notify : gulp plugin to send messages based on Vinyl Files or Errors to Mac OS X, Linux or Windows using the node-notifier module. Fallbacks to Growl or

【HANA系列】SAP HANA计算视图(calculation views)使用RANK报错

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA计算视图(calculation views)使用RANK报错 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 Got unknown tag name 'viewAttributes'(cubeSchema -> calculationScenario -> calculation

解决安装ossim(debian系列linux系统)出现firmware报错

Dell T410服务器安装Debian的主要问题是网卡的驱动问题.由于安装光盘中并未携带网卡的固件程序,导致安装过程中不能识别服务器的网卡.我的解决方式如下: 使用第一张Debian安装光盘将系统安装到出现此报错页面,此时准备第一个u盘,从以下地址中下载相关组件(里面有的或许不相关,由于较懒,索性都下载了)复制到u盘中的根下或者建立一个firmware目录中,本人是使用的是后者,按ctrl+alt+f2后,将准备的u盘挂载到/mnt下,再利用ctrl+alt+f5继续安装,发现这个报错就解决了

【java开发系列】—— Tomcat编译报错

由于之前Eclipse里面有一个可移植性的web工程,但是在我很久没用后,再次登录这个IDE的时候就发现了问题. 首先,我的电脑里面有两个版本的JDK,1.6和1.7.两个版本的Tomcat6和7以及两个版本的Eclipse IDE 3.5和4.0+. 当我启动开发环境后,想要向server中添加应用,发现报错: There are no resources that can be added or removed from the server. 我之前好用的应用怎么回不好使呢.于是删除ser

Java报错系列——split

前言 在Java项目中,比如我们经常使用String的split方法对文本进行处理:在Map/Reduce中,我们也需要对HDFS文件读取后对line进行分割,也涉及到split.前几天,本来"好好的"程序,突然在split处报错,后来才知道由于有一条"脏数据"导致split"超出"了预期,才导致了"不可能发生的异常"就这样发生了~不过也说明了一些基础知识真的很重要,于是把String类的split源码阅读了下,发现一个&qu

zabbix系列之三——安装报错

1Zabbix_server启动失败 1.1查看日志:vi /var/log/zabbix/zabbix_server.log zabbix_server [23500]: cannot open log: cannot create semaphore set: [28] No space left on device 网上类似: https://www.cnblogs.com/xkus/p/7783630.html 报错原因: kernel.sem参数设置过小, vim /etc/sysct

windows7安装Office 2013后,安装Visio 2013报错:安装程序找不到office.zh-cn

虽然windows 8.1(cn_windows_8.1_professional_vl_with_update_x64_dvd_4050293.iso)是款不错的系统,但是由于我的无线一直不能正常使用且经常出现不能正常更新,还有桌面卡住的几率比之前多太多了等先重回windows7 X64. 我安装的是cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso,使用正常,且之前也是使用的这款很稳定,安装Office 2013(cn_office_pro