[Clickhouse] Clickhouse 报SQLException : Read timed out

1 问题描述

在使用Clickhouse(21.3.4.25)进行大数据量地数据查询,高频报出 SQLException : Read timed out 错误

2 问题分析

2.1 单次查询:耗时约4s

2.2 并发20查询:报SQLException Read timeout,并发5查询:正常

2.3 整个SQL :查询业务逻辑复杂(多层嵌套、Join、200余行)

2.4 整个Query SQL 的查询基表:基于1个36亿级(6W Inner Join 6W)的视图表

2.x 问题结论及优化方向

  • 根本原因:
  • SQL逻辑和所消耗的资源较高,达到了CK数据库的资源、性能瓶颈。(Clickhouse本身也不支持高并发查询,官网/最佳实践的建议:单表查询,尽可能减少join、最高单表并发100)
  • 个人优化建议:
  • 1、优化SQL(可结合物化视图,如果担心统计不准(大部分情况下,误差概率极低、较小),可先主动执行 optimze table {table} final 指令做合并,再执行 Query SQL)
  • 2、尝试调整连接参数(如:?socket_timeout=600000,能一定程度上减少此类报错)
复制代码
由于数据量过大,查询请求太久,导致clickhouse连接超时。
建议在clickhouse连接字符串后面加上参数:`?socket_timeout=600000`再验证
socket_timeout的单位是ms,可以根据实际情况更改大小。

X 参考文献

  • clickhouse
相关推荐
麦兜和小可的舅舅4 小时前
ClickHouse 列管理机制解析:从 COW、IColumn 到 CRTP
c++·clickhouse
4t4run8 天前
1、clickhouse 安装
数据库·clickhouse
JackSparrow4149 天前
使用Elasticsearch代替数据库like以加快查询的各种技术方案+实现细节
大数据·clickhouse·elk·elasticsearch·搜索引擎·postgresql·全文检索
梦想与想象-广州大智汇16 天前
MySQL 同步数据到 ClickHouse 方案对比分析
数据库·mysql·clickhouse
Smile_25422041817 天前
clickhouse日志疯涨问题
linux·运维·服务器·clickhouse
计算机魔术师17 天前
【技术硬核 | 存储】ClickHouse 原理与 Langfuse 存储实践:当 LLM Trace 爆炸时,PG 还扛得住吗?
人工智能·clickhouse·工程实践·sbti·职场焦虑
fire-flyer20 天前
ClickHouse系列(九):慢查询、内存 OOM 与稳定性治理
android·clickhouse
fire-flyer20 天前
ClickHouse系列(十):生产架构与最佳实践总结
clickhouse·架构
fire-flyer21 天前
ClickHouse系列(八):ClickHouse 的 UPDATE / DELETE 正确姿势
大数据·数据库·clickhouse
fire-flyer21 天前
ClickHouse系列(七):Materialized View 与多分辨率 Rollup 设计
大数据·数据库·clickhouse·架构