手记

对比ClickHouse中的TinyLog表引擎和LogBlock表引擎

2023-10-20 09:22:56364浏览

一凡

2实战 · 485手记 · 29推荐

建议先关注、点赞、收藏后再阅读。

存储结构 数据压缩 查询性能 应用场景
TinyLog表引擎 先进先出的顺序存储 无压缩或少量压缩 较低的查询性能 处理大量小型日志数据
LogBlock表引擎 基于Log-structured LZ4等算法进行压缩 较高的查询性能 处理少量大型数据
merge-tree的存储

TinyLog表引擎:

  • 存储结构:
    TinyLog表引擎是以先进先出的顺序存储数据,保持写入顺序。
  • 数据压缩:
    TinyLog表引擎一般不进行数据压缩,或者仅进行少量的压缩,因为对于小型数据来说,压缩可能不是必要的。
  • 查询性能:
    由于存储结构和数据压缩的特性,TinyLog表引擎的查询性能较低,特别是在涉及大量数据的情况下。

应用场景
TinyLog表引擎适合处理大量小型日志数据,例如日志文件、事件日志等。这些数据一般按照时间顺序进行写入和查询,而且很少需要进行复杂的查询操作。

LogBlock表引擎:

  • 存储结构:
    LogBlock表引擎采用了基于Log-structured merge-tree的存储结构,可以将多个小数据块进行合并,形成更大的数据块。这种存储结构有助于提高写入和查询性能。
  • 数据压缩:
    LogBlock表引擎支持使用压缩算法(如LZ4)对数据进行压缩,有助于减小存储空间的占用。
  • 查询性能:
    由于存储结构和数据压缩的特性,LogBlock表引擎具有较高的查询性能,特别是在处理大量数据的情况下。

应用场景
LogBlock表引擎适用于处理少量但较大的数据,例如大型事件日志、时序数据、设备传感器数据等。这些数据一般需要进行复杂的查询操作,如聚合、过滤、分析等,而且会随着时间的推移逐渐增长。

0人推荐
随时随地看视频
慕课网APP