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;

相关推荐
老虎06271 分钟前
Redis入门,配置,常见面试题总结
数据库·redis·缓存
一起养小猫3 分钟前
Flutter for OpenHarmony 实战:数据持久化方案深度解析
网络·jvm·数据库·flutter·游戏·harmonyos
codeRichLife4 分钟前
TimescaleDB保存100万条设备采集数据的两种存储方案对比分析
数据库
J&Lu14 分钟前
[DDD大营销-Redis]
数据库·redis·缓存
咚咚?16 分钟前
麒麟操作系统达梦数据集群安装(一主多从)
数据库
xu_yule21 分钟前
网络和Linux网络-13(高级IO+多路转接)五种IO模型+select编程
linux·网络·c++·select·i/o
u01092727125 分钟前
使用XGBoost赢得Kaggle比赛
jvm·数据库·python
定偶28 分钟前
MySQL多表连接查询详解
c语言·数据库·mysql
woshilys35 分钟前
sql server 索引选择
数据库·sqlserver
安科士andxe43 分钟前
纤云科技 EPON OLT PX20 + 光模块:高兼容低功耗的光纤接入优选方案
网络·科技