《PolarDB-X开源分布式数据库实战进阶》——PolarDB-X的TTL表的使用和原理(2)

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 《PolarDB-X开源分布式数据库实战进阶》——PolarDB-X的TTL表的使用和原理(2)

《PolarDB-X开源分布式数据库实战进阶》——PolarDB-X的TTL表的使用和原理(1) https://developer.aliyun.com/article/1228589?groupCode=polardbforpg



image.png

 

TTL提供了视图,可以通过select*from information_schema.local_partitions 查看系统视图表,传入表名即可看到表中所有TTL分区。注意,TTL分区与数据分区不一样,数据分区为按照哈希、range分区,TTL分区按照时间分区。

 

上图显示共有三个分区,小于2022-11-1的数据会被路由到第一个分区,小于2022-12-1的数据会被路由到第二个分区,其他数据会被路由到最后一个分区。也显示了每个分区的失效时间,可以通过右侧命令将分区删除,或通过定时任务自动将分区删除。

 

注意,如果分区没有过期,则即使执行删除分区命令,该分区也不会被删除,只有已经过期的分区才会被删除。

 

同样,如果多次调用allocate local partition命令,也不会无限创建新分区,而是会按照建表时定义的提前创建分区的时间,比如定义了提前创建3个分区,则最多只提前创建3个分区。

 

check table指令用于校验TTL分区的一致性。TTL功能与PolarDB-X的分区表功能正交,PolarDB-X的每个分区在数据节点上都是一个物理表,TTL负责对物理表再做分区。命令作用是校验PolarDB-X所有分区下物理表的物理分区是否相同。TTL默认会保证所有功能的一致性。

 image.png

 

所有TTL表与普通表、TTL表之间可以进行任意转换。

 

image.png

 

PolarDB-X定时任务框架接收到cron表达式后,会自动对其进行转换,展示为人类可读的语句,如上图所示。

 

image.png

 

如果对内核如何实现DDL感兴趣,可以在执行任何DDL时,在前面加上trace指令,然后再执行show trace指令,即可展示如上图所示的可视化图,可以看到DDL进行了哪些操作。它由一系列task组成,每一个task都与开源代码中Java源文件一一对应,也可以在开源代码中搜索相应class,查看主要代码。

 

image.png

 

创建新分区与失效老分区的内部逻辑是滑动窗口的时间判断。进行时间判断后会将其翻译为针对数据节点上对物理表的操作。新建分区的本质为reorganize操作,比如要新建分区,其本质为将pmax分区reorganize成多个更细粒度的分区。失效老分区的本质为drop partition操作。



《PolarDB-X开源分布式数据库实战进阶》——PolarDB-X的TTL表的使用和原理(3) https://developer.aliyun.com/article/1228585?groupCode=polardbforpg

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
6天前
|
NoSQL 关系型数据库 分布式数据库
基于PolarDB的图分析:通过DTS将其它数据库的数据表同步到PolarDB的图
本文介绍了使用DTS任务将数据从MySQL等数据源实时同步到PolarDB-PG的图数据库中的步骤.
|
9天前
|
SQL 关系型数据库 分布式数据库
夺冠在即 | PolarDB数据库创新设计赛(天池杯)决赛答辩通知
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)于8月21日启动,吸引了200多所高校近千支队伍参赛。经过激烈角逐,60支队伍晋级决赛第一阶段,36支队伍脱颖而出进入现场答辩,将于12月29日在武汉大学争夺最终奖项。决赛要求选手基于PolarDB-PG开源代码部署集群并优化TPCH查询性能。完赛率超90%,成绩表现出明显梯度,前20名均在500秒内完成。评委来自学术界和工业界,确保评选公正。预祝选手们取得优异成绩!
|
24天前
|
Cloud Native 关系型数据库 分布式数据库
PolarDB 分布式版 V2.0,安全可靠的集中分布式一体化数据库管理软件
阿里云PolarDB数据库管理软件(分布式版)V2.0 ,安全可靠的集中分布式一体化数据库管理软件。
|
2月前
|
存储 Dubbo Java
分布式 RPC 底层原理详解,看这篇就够了!
本文详解分布式RPC的底层原理与系统设计,大厂面试高频,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
分布式 RPC 底层原理详解,看这篇就够了!
|
29天前
|
机器学习/深度学习 存储 运维
分布式机器学习系统:设计原理、优化策略与实践经验
本文详细探讨了分布式机器学习系统的发展现状与挑战,重点分析了数据并行、模型并行等核心训练范式,以及参数服务器、优化器等关键组件的设计与实现。文章还深入讨论了混合精度训练、梯度累积、ZeRO优化器等高级特性,旨在提供一套全面的技术解决方案,以应对超大规模模型训练中的计算、存储及通信挑战。
64 4
|
6天前
|
NoSQL 关系型数据库 分布式数据库
PolarDB图数据库快速入门
图数据库(Graph Database)专门存储图数据,适合处理社交网络、知识图谱等复杂关系。它使用图查询语言(如Cypher、Gremlin)进行操作。PolarDB兼容OpenCypher语法,支持创建、查询、更新和删除图数据,包括模式匹配、过滤、MERGE避免重复、可视化工具等功能,简化了图数据的管理和应用。
|
2月前
|
存储 缓存 网络安全
南大通用GBase 8s 数据库 RHAC集群基本原理和搭建步骤
南大通用GBase 8s 数据库 RHAC集群基本原理和搭建步骤
|
2月前
|
关系型数据库 分布式数据库 数据库
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
|
3月前
|
NoSQL Java Redis
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
Redis分布式锁在高并发场景下是重要的技术手段,但其实现过程中常遇到五大深坑:**原子性问题**、**连接耗尽问题**、**锁过期问题**、**锁失效问题**以及**锁分段问题**。这些问题不仅影响系统的稳定性和性能,还可能导致数据不一致。尼恩在实际项目中总结了这些坑,并提供了详细的解决方案,包括使用Lua脚本保证原子性、设置合理的锁过期时间和使用看门狗机制、以及通过锁分段提升性能。这些经验和技巧对面试和实际开发都有很大帮助,值得深入学习和实践。
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
|
29天前
|
存储 NoSQL Java
使用lock4j-redis-template-spring-boot-starter实现redis分布式锁
通过使用 `lock4j-redis-template-spring-boot-starter`,我们可以轻松实现 Redis 分布式锁,从而解决分布式系统中多个实例并发访问共享资源的问题。合理配置和使用分布式锁,可以有效提高系统的稳定性和数据的一致性。希望本文对你在实际项目中使用 Redis 分布式锁有所帮助。
96 5

热门文章

最新文章

相关产品

  • 云原生数据库 PolarDB