ClickHouse删除数据之delete问题详解

本文详细解析了ClickHouse中使用DELETE操作删除数据的过程,包括Mutation查询的特性,如异步后台执行、无法回滚及数据删除的实现机制。通过system.mutations系统表跟踪Mutation状态,了解数据目录的变化和日志文件的作用。
摘要由CSDN通过智能技术生成

背景

ClickHouse中一张数据表中一天有7000w数据,采用delete删除命令删除一周数据,SQL已经执行成功,短时间内查询原表数据仍然存在,没有被删除,过了一会之后,在查询数据删除成功。

SQL提交成功:

短时间内【40s】查询数据仍然存在

经过查阅资料得知,ClickHouse提供了DELETE和UPDATE的能力,这类操作称为Mutation查询,可以看作ALTER语句的变种。虽然Mutation能最终实现修改和删除,但不能完全以通常意义上的UPDATE和DELETE来理解,我们必须认识到它的不同:

  • Mutation语句是一种“很重”的操作,更适用于批量数据的修改和删除;
  • 它不支持事务,一旦语句被提交执行,就会立刻对现有数据产生影响,无法回滚;
  • Mutation语句的执行是一个异步的后台过程,语句被提交之后就会立即返回。

由于一般测试的数据很少,DELETE操作给人的感觉和常用的OLTP数据库无

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值