跳到主要内容
跳到主要内容

Can I use ClickHouse as a time-series database?

Note: 请参见博客 在ClickHouse中处理时间序列数据,了解使用ClickHouse进行时间序列分析的更多示例。

ClickHouse是一个通用的数据存储解决方案,适用于OLAP工作负载,尽管还有许多专业化的时间序列数据库管理系统。然而,ClickHouse对查询执行速度的关注使其在许多情况下超越了专业系统。关于这个主题有许多独立的基准测试,因此我们在这里不进行测试。相反,让我们关注对于你的用例来说,使用ClickHouse的重要特性。

首先,有**专业编解码器**,使典型的时间序列数据更具优势。包括常见的算法,如DoubleDeltaGorilla,以及特定于ClickHouse的T64

其次,时间序列查询通常只涉及最近的数据,例如一天或一周前的数据。使用同时拥有快速的NVMe/SSD驱动器和大容量HDD驱动器的服务器是合理的。ClickHouse的TTL特性允许配置将新鲜的热数据保存在快速驱动器上,并随着时间的推移逐渐将其移动到较慢的驱动器上。如果你的要求需要,甚至可以进行更旧数据的汇总或删除。

尽管这违背了ClickHouse存储和处理原始数据的理念,但你可以使用物化视图来满足更严格的延迟或成本要求。