Clickhouse 驱动程序分块

问题描述 投票:0回答:1

我使用 clickhouse-driver 通过以下命令从 SQL 查询创建 pandas 数据框:

data = client.query_dataframe('CUSTOM SQL QUERY')

但是我收到内存错误:

ServerException:代码:241。DB::Exception:内存限制(用于查询) 超出:将使用 74.51 GiB(尝试分配 4531920 块) 字节),最大:74.51 GiB。 OvercommitTracker 决策:内存 不使用过度使用。未设置 OvercommitTracker.. 堆栈跟踪:

有没有办法对查询进行分块?我在文档中没有找到解决方案。

out-of-memory clickhouse
1个回答
0
投票

错误与clickhouse客户端库无关

检查您的 SQL 查询是否包含

GROUP BY
ORDER BY
以及子查询 尝试调整
max_bytes_before_external_group_by
https://clickhouse.com/docs/en/operations/settings/query-complexity#settings-max_bytes_before_external_group_by

max_bytes_before_external_sort

https://clickhouse.com/docs/en/operations/settings/query-complexity#settings-max_bytes_before_external_sort

还请关注 https://azat.sh/presentations/2022-know-your-clickhouse/#/40

© www.soinside.com 2019 - 2024. All rights reserved.