[大数据学习之ClickHouse]04-ClickHouse表引擎之SummingMergeTree/ReplacingMergeTree

ReplacingMergeTree

ReplacingMergeTree是MergeTree子集,是MergeTree的一个变种,与MergeTree几乎无差别,仅仅比MergeTree多了一个去重的功能

需要注意的是:

  1. 数据去重的时间是未知且无法把控的
  2. 数据的去重是在合并过程中操作的
  3. 数据的去重只能在分区内,无法跨分区
  4. ReplacingMergeTree无法保证数据完全没有重复

[大数据学习之ClickHouse]04-ClickHouse表引擎之SummingMergeTree/ReplacingMergeTree_第1张图片

举个例子:

以创建时间为去重依据(如果不指定去重依据,那么就按照插入顺序保留最后一条,如果去重依据相等,还是按照插入顺序来判断)

SummingMergeTree

SummingMergeTree又叫预聚合引擎
SummingMergeTree会依据指定的字段做聚合操作,聚合的依据就是order by中的字段 可以理解为内部做了对order by中字段的gourp by+聚合操作

  1. 如果有指定的列,那么这一列即为聚合列,如果没有指定的列,那么表中所有非维度的列且是数值类型的列都会进行聚合(非维度指的就是除order by以外的)
  2. 无法进行跨分区聚合,只能在一个分区内聚合
  3. 可以指定多个聚合列
    [大数据学习之ClickHouse]04-ClickHouse表引擎之SummingMergeTree/ReplacingMergeTree_第2张图片

你可能感兴趣的:(BigData,big,data,学习,大数据)