暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PolarDB分布式版的TTL功能

酷数据库 2023-07-25
192

本文介绍了TTL的功能和原理。

功能介绍

TTL(Time to Live,生存周期)功能,支持在创建表的DDL语句中指定local_partition_definition语法,创建一个TTL表。TTL表会将每个物理表按照时间进行分区,并通过定时任务进行管理,能够让冷数据在PolarDB分布式版中按照计划失效,减少对存储空间的占用。

适用场景

某些业务场景下,业务数据的增长很快,并且业务数据的热度随着时间推移会有明显的降低。这时候,如果数据一直存储在PolarDB分布式版中,既会占用存储空间,也会降低正常业务查询的效率,此种场景即可使用TTL表进行数据管理。

使用限制

  • 仅PolarDB分布式版的5.4.13及以上版本支持该功能;
  • TTL功能仅支持在分区表(mode='auto')中使用。

基本原理

TTL表的每个物理表都会按照时间做Range分区,所有GSI的物理表跟主表的分区方式一致。

随着时间的推移,新的分区会被创建,失效的分区会被删除,如下图所示:

说明 PolarDB分布式版默认会自动创建新分区和删除失效分区。您也可以在建表时禁用自动功能,通过DDL语句来手动创建或删除失效分区。

456789

一个周期后,创建的新分区和失效的分区,如下图所示:

456789
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论