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)

相关推荐
Dovis(誓平步青云)21 小时前
同一条路线在手机和平板上怎样换一种排版
android·开发语言·数据库·智能手机·音视频
firstacui21 小时前
Mysql调优
android·mysql·adb
程序员-Benothing21 小时前
什么是 MySQL 的主从同步机制?它是如何实现的?
android·数据库·mysql
Android打工人21 小时前
c++ 、java 融为一体2,c++ 实例化Android虚拟机直接运行java,c,java 一个进程号
android·java·c++
IT毕设实战小研21 小时前
基于安卓的考研资讯系统设计与实现
android·大数据·vue.js·爬虫·python·考研·课程设计
Mr数据杨1 天前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
●VON1 天前
谁小时候不想要一个游戏修改器?我把电脑 Skill 做成了 Android 小助手
android·游戏·电脑
刃神太酷啦1 天前
Linux 系统 MySQL 完整安装配置教程:从卸载 MariaDB 到优化 my.cnf----《Hello MySQL!》(1)
android·linux·c语言·c++·mysql·leetcode·mariadb
里欧跑得慢1 天前
Flutter 三方库 function_tree — 鸿蒙应用开发中的动态数学公式解析与计算神器,实现鸿蒙深度适配下的复杂函数逻辑运行时求值实战(适配鸿蒙 HarmonyOS Next ohos)
android·前端·安全·flutter·华为·harmonyos
IT毕设实战小研1 天前
基于安卓的空气质量查询系统
android·大数据·vue.js·爬虫·python·django·课程设计