clickhouse ReplacingMergeTree

ReplacingMergeTree

这个引擎可以删除重复的数据,但是不保证数据的绝对唯一。

设计之初是为了节约空间把相同的数据合并,不是为了做唯一校验。

而且合并行为是后天控制的,没有强唯一

建表写入

sql 复制代码
create table learning.ReplacingMergeTree_table(
   id UInt8,
   info String,
   timestamp DateTime
) engine = ReplacingMergeTree(timestamp)
order by id;
sql 复制代码
insert into learning.ReplacingMergeTree_table values (1,'js','2026-05-05 00:10:10');
insert into learning.ReplacingMergeTree_table values (1,'js','2026-05-04 00:10:10');
insert into learning.ReplacingMergeTree_table values (1,'js','2026-05-04 00:10:10');

查询后可以看到 数据不会直接合并

命令合并

为了演示强行执行合并命令

sql 复制代码
optimize table learning.ReplacingMergeTree_table final

执行完后可以看到 之保留了 timestamp 最大的那一条,因为我们设计的是 按照 timestamp 来去重 engine = ReplacingMergeTree(timestamp)

相关推荐
FlightYe8 分钟前
音视频修炼之容器与协议(四):RTSP详解
android·linux·ffmpeg·音视频·dash
疯华整猫2 小时前
删掉 LeakCanary 那天,我用 Trae 自己撸了一套:最难的不是分析堆,是决定什么时候 dump
android·人工智能·性能优化
mmsx9 小时前
耳切法切带洞多边形:论文能跑通,真实数据为什么崩
android·kotlin
洞见前行9 小时前
你的 Activity 关了,为什么还活着?Android 内存泄漏从发现、定位到线上治理
android·性能优化·leakcanary
Kapaseker11 小时前
Kotlin 又要加语法糖了:这次轮到 if-else
android·kotlin
恋猫de小郭13 小时前
Flutter 3.50 & Dart 3.14 发布,快来看看有什么更新吧
android·前端·flutter
Starry-sky(jing)1 天前
Vidda ADB 开启:R Pro 65 找不到开发者选项的处理与连接验收
android·adb·远程控制·电视·vidda
雨白1 天前
从原理到实践:使用 Kotlin KSP 仿写 ButterKnifeLite
android·kotlin