如何加速 ClickHouse 中的大查询?
How to speed up big query in ClickHouse?
背景:
我在 ClickHouse 提交了一个本地查询(没有使用缓存),它处理了 41443 万行,42.80 GB。
查询持续了 100 多秒。
我的 ClickHouse 实例安装在 AWS c5.9xlarge
EC2 上 12T
st1
EBS
在此查询期间,IOPS
最多 500
,读取 throughput
最多 20M/s
。
作为比较,st1
EBS max IOPS
是 500
而 max throughput
是 500M/s
.
这是我的问题:
500
IOPS
真的会限制我的查询(文件读取)速度吗? (不用管缓存)我应该将 EBS 卷类型更改为 gp2
还是 io1
以增加 IOPS
?
- 在相同的
IOPS
下,有什么设置可以改善throughput
吗? (正如我所见,它实际上离天花板还很远)
我尝试增加 'max_block_size'
以一次读取更多文件,但它似乎不起作用。
- 如何延长缓存时间?大查询分分钟搞定。缓存需要几秒钟。但是缓存似乎不会持续很长时间。
- 如何预热色谱柱以满足所有要求?请显示 sqls。
Does 500 IOPS actually limit my query (file-reading) speed?
是
Should I change EBS volume type to gp2 or io1 to increase IOPS?
是
Is there any setting can improve throughput under the same IOPS?
调整max_bytes_to_read
减少列数(select)
减少零件数量(select)
How to extend the cache time?
min_merge_bytes_to_use_direct_io=1
How can I warm-up columns to meet all requirements? Please show sqls.
select a,b,c,d from T Format Null
背景:
我在 ClickHouse 提交了一个本地查询(没有使用缓存),它处理了 41443 万行,42.80 GB。
查询持续了 100 多秒。
我的 ClickHouse 实例安装在 AWS c5.9xlarge
EC2 上 12T
st1
EBS
在此查询期间,IOPS
最多 500
,读取 throughput
最多 20M/s
。
作为比较,st1
EBS max IOPS
是 500
而 max throughput
是 500M/s
.
这是我的问题:
500
IOPS
真的会限制我的查询(文件读取)速度吗? (不用管缓存)我应该将 EBS 卷类型更改为gp2
还是io1
以增加IOPS
?- 在相同的
IOPS
下,有什么设置可以改善throughput
吗? (正如我所见,它实际上离天花板还很远) 我尝试增加'max_block_size'
以一次读取更多文件,但它似乎不起作用。 - 如何延长缓存时间?大查询分分钟搞定。缓存需要几秒钟。但是缓存似乎不会持续很长时间。
- 如何预热色谱柱以满足所有要求?请显示 sqls。
Does 500 IOPS actually limit my query (file-reading) speed?
是
Should I change EBS volume type to gp2 or io1 to increase IOPS?
是
Is there any setting can improve throughput under the same IOPS?
调整max_bytes_to_read
减少列数(select)
减少零件数量(select)
How to extend the cache time?
min_merge_bytes_to_use_direct_io=1
How can I warm-up columns to meet all requirements? Please show sqls.
select a,b,c,d from T Format Null