如何在clickhouse中维护缓存?

jum4pzuy  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(1)|浏览(1245)

我使用crontab安排一个sql,每2小时查询一个大表。

select a,b,c,d,e,f,g,h,i,j,k,many_cols from big_table format Null

每次需要5分钟到30秒。
我能从照片上看到什么 query_log 当sql时间较小时 MarkCacheHits 价值是高的,当时间是高的 MarkCacheHits 值很低,并且 MarkCacheMiss 价值很高。
我想知道如何让马克·cache尽可能多的命中(这可能不是唯一一张需要加热的大table)
标记缓存会被其他查询替换吗?它的限制是什么?
选择特定列的预热方式真的适用于这些列的聚合查询吗?例如,预热sql如上所述,聚合查询可以是 select a,sum(if(b,c,0)) from big_table group by a 我的clickhouse服务器最近偶尔挂起,从日志中看不到相应时间的任何错误或异常。这是否与我对大table的常规热身询问有关?

klr1opcd

klr1opcd1#

实际上,您需要将数据放入linux磁盘缓存。
标记缓存会被其他查询替换吗?它的限制是什么?
是,将被替换,5gb <mark_cache_size>5368709120</mark_cache_size> 选择特定列的预热方式真的适用于这些列的聚合查询吗?
是的,因为你把文件放进了linux缓存。
这是否与我对大table的常规热身询问有关?
不。

相关问题