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;

相关推荐
それども6 分钟前
分库分表的事务问题 - 怎么实现事务
java·数据库·mysql
那就回到过去8 分钟前
交换机特性
网络·hcip·ensp·交换机
·云扬·25 分钟前
MySQL Binlog 配置指南与核心作用解析
数据库·mysql·adb
天空属于哈夫克344 分钟前
Java 版:利用外部群 API 实现自动“技术开课”倒计时提醒
数据库·python·mysql
lpruoyu1 小时前
【Docker进阶-05】Docker网络
网络·docker·容器
eWidget1 小时前
随机森林原理:集成学习思想 —— Java 实现多棵决策树投票机制
java·数据库·随机森林·集成学习·金仓数据库
Traced back1 小时前
SQL Server 核心语法+进阶知识点大全(小白版)
数据库·sqlserver
资深web全栈开发1 小时前
PostgreSQL枚举还是字符串:ENUM vs VARCHAR + CHECK 的权衡
数据库·postgresql
小李独爱秋1 小时前
计算机网络经典问题透视:蜂窝网络切换如何“扼杀”你的TCP连接?
网络·网络协议·tcp/ip·计算机网络·php·信息与通信
凯子坚持 c1 小时前
C++基于微服务脚手架的视频点播系统---客户端(4)
数据库·c++·微服务