Clickhouse基础知识

ClickHouse MergeTree家族引擎_wenlongxunmeng的博客-CSDN博客

大数据ClickHouse进阶(二十二):ClickHouse优化 - 知乎

1、ClickHouse使用场景


ClickHouse是一个开源的,用于联机分析(OLAP)的列式数据库管理系统, 它是面向列的,并允许使用SQL查询,实时生成分析报告。ClickHouse适合OLAP数据分析类的场景,数据体量越大,ClickHouse的优势越大。ClickHouse不适合以下场景:

(1)适合读或者大批量写的场景,不适合频繁的写或者修改(这种场景用Doris或者Kudu更为合适),在与Flink结合的场景下可以采用窗口的方式进行批量写;

(2)不适合根据主键进行行粒度查询或删除场景(支持但不建议);

(3)ClickHouse 不支持事务,事务场景不适合。

2、ClickHouse的MergeTree引擎


在ClickHouse的所有的表引擎中,其中最为核心的当属MergeTree系列表引擎,这些表引擎拥有最为强大的性能和最广泛的使用场合。MergeTree系列表引擎是官方主推的存储引擎,有主键索引、数据分区、数据副本、数据采样、删除和修改等功能,支持几乎所有ClickHouse核心功能。

MergeTree系列表引擎包含:MergeTree、ReplacingMergeTree、SummingMergeTree(汇总求和功能)、AggregatingMergeTree(聚合功能)、CollapsingMergeTree(折叠删除功能)、VersionedCollapsingMergeTree(版本折叠功能)引擎,在这些的基础上还可以叠加Replicated(副本)和Distributed(分片)。

MergeTree在写入一批数据时,数据总会以数据片段的形式写入磁盘,且数据片段在磁盘上不可修改。为了避免片段过多,ClickHouse会通过后台线程,定期合并这些数据片段,属于相同分区的数据片段会被合成一个新的片段。

2.1 MergeTree


2.1.1 MergeTree作为家族系列最基础的表引擎,主要有以下特点:

(1)存储的数据按照主键排序:创建稀疏索引加快数据查询速度。

(2)支持数据分区,可以通过PARTITION BY语句指定分区字段。

(3)支持数据副本。

(4)支持数据采样。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值