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;

相关推荐
廋到被风吹走7 分钟前
【数据库】【Oracle】事务与约束详解
数据库·oracle
寺中人9 分钟前
飞猫M7随身WiFi去云控,解限速,改后台,改壁纸
网络·工具·随身wifi
天然玩家14 分钟前
【数据库知识】聚簇索引&二级索引
数据库·聚簇索引·回表·二级索引
斯普信专业组22 分钟前
Redis Cluster 集群化部署全流程指南:从源码编译到容器化
数据库·redis·缓存
缘友一世24 分钟前
软件定义网络SDN(10)复习
网络
HappRobot26 分钟前
OpenTelemetry和Jaeger、 SkyWalking的关系
linux·网络·skywalking
Tandy12356_44 分钟前
手写TCP/IP协议栈——TCP结构定义与基本接口实现
c语言·网络·c++·网络协议·tcp/ip·计算机网络
任子菲阳1 小时前
学JavaWeb第五天——MySQL
数据库·mysql
ZePingPingZe1 小时前
MySQL查看事务与锁
数据库·mysql
TDengine (老段)1 小时前
从“被动养护”到“主动预警”,TDengine IDMP 让智慧桥梁靠数据“说话”
大数据·数据库·人工智能·物联网·时序数据库·tdengine·涛思数据