clickhouse的ttl

TTL

只能在MergeTree系列表中使用,和分区一样,也只能在mergetree系列表中用

列: 当列的时间超过设置的值 -整列数据被删除

表: 当表中的某个写行的时间超过设置的值 -整行会被删除

定义值的存储时间。只能为MergeTree系列表指定。确定值的生存期。

当列中的值过期时,ClickHouse会将其替换为列数据类型的默认值。如果数据部分中的所有列值均已过期,则ClickHouse将从文件系统中的数据部分删除此列。

TTL可以为整个表和每个单独的列设置该子句。表级TTL也可以指定在磁盘和卷之间自动移动数据的逻辑

CREATE TABLE tb_ttl

(

ctime DateTime,

name String

)

ENGINE = MergeTree

PARTITION BY toYYYYMM(ctime)

ORDER BY ctime

TTL ctime + INTERVAL 15 SECOND; -- 设置表过期时间为15秒

insert into tb_ttl values(now() ,'zhangsan') ;

设置列ttl

CREATE TABLE tb_ttl2

(

d DateTime,

a Int TTL d + INTERVAL 1 MONTH,

b Int TTL d + INTERVAL 1 MONTH,

c Int TTL d + INTERVAL 10 SECOND,

e String

)

ENGINE = MergeTree

PARTITION BY toYYYYMM(d)

ORDER BY d;

相关推荐
今晚务必早点睡3 小时前
微服务改数据库密码后服务仍能访问?一次“看似异常、实则常见”的生产现象全解析
数据库·微服务·oracle
老师我太想进步了20265 小时前
cmd连接MySQL及相关查询
数据库·mysql
yuanmenghao5 小时前
车载Linux 系统问题定位方法论与实战系列 - 车载 Linux 平台问题定位规范
linux·运维·服务器·网络·c++
難釋懷7 小时前
Redis命令-Set命令
数据库·redis·缓存
上海云盾安全满满8 小时前
高防IP线路质量重要吗
网络·网络协议·tcp/ip
Linux-palpitate8 小时前
PostgreSQL(PG)的1主2从集群部署安装
数据库·postgresql
heartbeat..8 小时前
数据库基础知识体系:概念、约束、范式与国产产品
java·数据库·学习笔记·国产数据库
hoududubaba8 小时前
ORAN共享小区的基本概念
网络·网络协议
山峰哥9 小时前
数据库工程核心:SQL调优让查询效率飙升的实战密码
网络·汇编·数据库·sql·编辑器
Coder_Boy_9 小时前
基于SpringAI的在线考试系统-DDD业务领域模块设计思路
java·数据库·人工智能·spring boot·ddd