简介
我使用ClickHouse作为数据仓库(包含数十亿行的表)。用户使用我的应用程序后端与DWH交互,该后端生成对ClickHouse的SQL查询。不同的用户可以访问相同的数据(有时查询中的过滤条件会发生变化)。假设将来ClickHouse将跨不同的服务器进行扩展。
任务
目前,我正在缓存频繁SQL查询的结果,根据存储在数据库中的表创建新表,并为表声明一个相当于1天的TTL。如果在白天有另一个查询到达该表,那么我将更改表并将TTL更新到另一个1天。我怀疑这种方法是否有效。此外,我还存储了一个表,在那里我修复了表的名称和上次访问的时间(以便使用我的应用程序删除过时的空表)。
是否有可能在ClickHouse中实现对最常用的数据或现成机制的有效访问?我也希望能链接到文献,在那里我可以了解这样的信息,或从不同的角度来处理这个问题。
发布于 2022-05-09 14:45:06
ClickHouse没有缓存机制。另一方面,它严重依赖于文件系统缓存。
https://stackoverflow.com/questions/72053320
复制相似问题