hyj 发表于 2021-6-4 11:20:03

解决Clickhouse数据重复问题

问题描述:
使用MergeTree引擎建表,进行插入数据时,发现数据重复。



原因:
MergeTree的主键(PRIMARY KEY)只是用来生成一级索引(primary.idx)的,并没有唯一性约束这样的语义。

ReplacingMergeTree通过ORDER BY,表示判断唯一约束的条件。当分区合并之时,根据ORDER BY排序后,相邻重复的数据会被排除。

解决:
换用ReplacingMergeTree引擎建表
ReplacingMergeTree建表语法参考:(根据 id + code 分组去重)
create table replace_test(
      id String,
      code String,
      create_time DateTime
)ENGINE = ReplacingMergeTree()
PARTITION BY toYYYYMM(create_time)
ORDER BY (id,code)
PRIMARY key id;



————————————————

原文链接:https://blog.csdn.net/u011110301/article/details/117531124

gogo2000 发表于 2021-10-25 15:06:50

学习了

gogo2000 发表于 2021-10-25 15:27:08

学习中

gogo2000 发表于 2021-10-25 15:37:10

学习,积分145

gogo2000 发表于 2021-10-25 15:41:06


学习,积分147

gogo2000 发表于 2021-10-25 16:29:07

学习,积分149

gogo2000 发表于 2021-10-25 16:36:00


学习,积分151

gogo2000 发表于 2021-10-26 08:45:19

学习,积分153

gogo2000 发表于 2021-10-26 08:54:02

学习,积分160

gogo2000 发表于 2021-10-26 09:09:44

学习,积分162
页: [1] 2
查看完整版本: 解决Clickhouse数据重复问题