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;

相关推荐
kk哥889925 分钟前
iOS开发:关于日志框架
网络·ios·cocoa
2301_789380491 小时前
vsc中使用DBHub-MCP连接云Mysql到vsc-copilot
数据库·mysql
杨DaB1 小时前
【MySQL】02 数据库的基本操作
数据库·mysql·oracle
m***66732 小时前
SQL 实战—递归 SQL:层级结构查询与处理树形数据
java·数据库·sql
昙鱼2 小时前
Markdown文件导入Milvus向量数据库完整指南
数据库·ai·milvus
A__tao2 小时前
gotool.top 的 SQL 转 Markdown
数据库·sql
Austindatabases2 小时前
基于SQLite如何设计应用程序,拆散,散,还的散!
数据库·sqlite
m***D2864 小时前
云原生网络
网络·云原生
马克学长4 小时前
SSM面向乡村振兴服务的产教融合服务平台521gh(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·乡村振兴·ssm 框架·服务平台
u***27615 小时前
C#数据库操作系列---SqlSugar完结篇
网络·数据库·c#