clickhouse数据库删除数据的五种方式
前言
clickhouse数据库清理数据的方式很多,每种方式都各有自己的优缺点,请根据实际需要采用适合自己的方式,下面逐一介绍。
一、通过删除表分区的方式
##查询某表分区 ck001 :) select database,table,partition,name, bytes_on_disk from system.parts where table='ck_test1'; ┌─database─┬─table┬─partition─┬─name────┬─bytes_on_disk─┐ │ default │ ck_test1 │ 202302 │ 202302_3_3_0 │ 221 │ │ default │ ck_test1 │ 202301 │ 202301_4_4_0 │ 232 │ └──────────┴────────────────────┴───────────┴ ##删除某表分区 ck001 :) alter table ck_test1 drop partition 202301;
二、执行delete方式
该方式为异步执行,并非实时。
## DELETE操作 -- 删除记录 alter table ck_table01 delete where id='11'; -- 删除分片表数据 alter table ck_table01 on cluster main_cluster where create_date>< '2023-02-02 15:00:00';
三、执行truncate方式
truncate适用于删除全表数据的情况,而且效率比DELETE更高。
truncate table default.ck_table01;
四、设置表数据生命周期
--设置白鸥ck_table01的TTL为30分钟
create table default.ck_table01
(
id Int64,
name Nullable(String),
address Nullable(String),
create_date Date
)
ENGINE = MergeTree
PARTITION BY toYYYYMM(create_date)
ORDER BY id
TTL toDate(create_date) + toIntervalMinute(30)
toIntervalMinute:n分钟过期
toIntervalDay:n天过期
toIntervalMonth:n月过期
五、删除数据文件目录
clickhouse数据目录和元数据目录是分开的,所以删除数据目录文件并不影响表结构。下面以清空全部表数据为例。
1、停止clickhoue数据库
systemctl stop clickhouse-server
2、删除数据文件目录
rm -rf /opt/clickhouse/data/default/
3、启动clickhouse数据库
systemctl start clickhouse-server
总结
方法三、五将清理全部数据,请确保数据安全,根据实际场景谨慎应用。
到此这篇关于clickhouse数据库删除数据的五种方式的文章就介绍到这了,更多相关clickhouse删除数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- ClickHouse数据库的监控与运维:监控指标、监控工具、运维策略、故障处理
- clickhouse远程连接以及用户名密码设置方式
- 在docker中搭建部署clickhouse过程
- clickhouse中Nullable与非空字段的建表与类型互转方式
- clickhouse复杂时间格式的转换方式
- 关于clickhouse几种create table的情况
- clickhouse分布式表的操作示例详解
- clickhouse系统表日志清理方式详解
- 数据分析数据库ClickHouse在大数据领域应用实践
- 以示例讲解Clickhouse Docker集群部署以及配置
- ClickHouse在高并发写入场景下的性能优化实践(CPU利用率飙升)
相关文章
Clickhouse数据表、数据分区partition的基本操作代码
clickhouse的分区是指将数据按照分区键进行划分,每个分区可以包含多个数据块,这篇文章主要介绍了Clickhouse数据表、数据分区partition的基本操作代码,需要的朋友可以参考下2023-11-11
Hadoop2.X/YARN环境搭建--CentOS7.0 JDK配置
在Centos中,进行配置jdk的环境,这个还是折腾了我听挺久的。特别是在一次配置中,导致后来我的root用户无法登录,并且用其他普通用户登录,使用su - root切换到root用户,都无法使用ls这一些普通的命令。由于没有权限,各种更改,都没辙。各种麻烦啊~2014-08-08
使用Navicat备份数据库MySQL、PostGreSQL等的详细步骤
Navicat支持多种数据库系统,提供手动与自动备份功能,可定期执行以确保数据安全,适用于防止数据丢失、业务快速恢复及合规需求,简化了传统命令行操作,本文通过图文给大家介绍的非常详细,需要的朋友可以参考下2025-08-08
开源 5 款超好用的数据库 GUI 带你玩转 MongoDB、Redis、SQL 数据库(推荐)
这篇文章主要介绍了开源 5 款超好用的数据库 GUI 带你玩转 MongoDB、Redis、SQL 数据库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-07-07


最新评论