PolarDB-X 数据 TTL 过期删除(三)| 学习笔记

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: 快速学习 PolarDB-X 数据 TTL 过期删除。

开发者学堂课程【PolarDB-X 开源分布式数据库进阶课程 :PolarDB-X 数据 TTL 过期删除(三)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1202/detail/18333


PolarDB-X 数据 TTL 过期删除


三、ttl 原理介绍

简单的说一下这一个表,这个表达式的话,它其实一个方言,感兴趣的话可以看一下这个表,你只要给他一个表达式,他会自动的来当你去计算他的含义,然后还是处于一些这样的可读的一些意思,刚刚都是 ttl 表的功能,这边如果大家对我们内核如何实现这么一些 dll 感兴趣的话,其实有个很方便的小技巧啊,我们在任何执行地调的时候都可以在他的前面加上一个 trace 指令,再进行一个收费式指令,它就可以显示出一个可视化的图,就像那右边展示的一样,这样的话就可以知道任何地点,他进行了哪些操作,他是以一个系列的 task 组成的,然后这些 task 跟我们开源代码中的 JAVA 源文件其实是对应的,然后也可以去通过这个方式来去我们的开源代码中搜索,相应的我去看看死机的代码,然后主要的代码的话,一些关键的类在 PPT 中展示,有兴趣的话可以按照这些信息来,是 polarDB-X 条语法它对应在我们每个物理表上创建出来的表,就会是这个样子。然后这边右边下面红框的范围其实就是因为我们左边定义了,所以他不会提前六个周期创建新的分区,然后红框上面的话是一些已有的分区,从 subway state 开始 Pay to local 跟 local partition 的内部逻辑其实就是这个滑动窗口的时间判断。那他做的时间判断之后,会把它翻译成针对我们数据节点上的一些对物理表的操作,对物理表的话其实是一个 reorganize 操作,比如说你要新建分区,其实就是把这个 pp max 这一个分区 organize 成多个的,但是力度的分区,那老的分区的话,其实就在会翻译成一个叫partition 的一个操作。

 

四、TTL 表的性能

最后再说一下这条表的性能,可能有些同学会顾虑到我们原先的物理表它是一个单表,但是用我的 ttl 表之后,我们所有的物理了都是变成一个分区表的,那这样会不会对我们的性能有所损害呢。其实经过测试的话,这是一个测试结果,可以发现对于程序数量越多,其实这个会下降。

image.png

最后再说一下这条表的性能,可能有些同学会顾虑到他原先的物理表它是一个单表,但是用的 ttl 表之后,我们所有的物理表都是变成一个分区表的,那这样会不会对我们的性能有所损害,其实,经过测试的话,这是一个测试结果,可以发现对于对于一个天天表相比于相同的表结构,但是不做贴条的划分,他的2t略有损伤,q S6有下降,但是是一个差距很小的一个情况,当然是97比100之类的,分区物理分区数量的越多,就是这个会下降的越多,但是整体的话,特别是检查场景是不会有太大差别的,那如果是全表扫描的话,刚刚说的是检查现在现在如果是全表扫描的话,他的q PS是会有一部分的下降的大平均的话大概会下降20%左右,但是如果你是一个范围查询,不是一个全表扫描的话,那我们知道他物理表其实也是有分区裁减的,他在特定场景上,他的性能其实有可能是反而会有所上升的,那最后的结论就是他的不管是按照物理根据划分,还是不用提前要表他物理表是一个单表,他的性能其实是不会有太多的差别的。

image.png

结论

当 DN 并未成为资源瓶颈时,Local Partition 表和普通表的性能差距很小。

不带 Local Partition 的拆分键时,性能损失约20%,最大吞吐量损失约50%(和分区成正比,数据量成及比)。

DN 资源够时,对客户端的变化是:RT 小幅增加。

带 Local Partition 的拆分键时,性能和吞吐量无明显差距,反而会有小幅提升。因为可以用时利用 INDEX 和PARTITION2 个线度做数据裁剪。

Local Partition 表,可利用拆分键时,AP 查询有优势。

相关文章
|
5月前
|
存储 关系型数据库 MySQL
亿级数据秒级响应:PolarDB MySQL HTAP实时分析方案设计与压测报告
PolarDB MySQL HTAP方案实现亿级数据秒级响应,支持高并发事务与实时分析。通过行列混存、智能路由与资源隔离,满足电商、金融等场景的实时报表、决策需求,降低架构复杂度与运维成本。
218 6
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
在9月20日2024云栖大会上,阿里云智能集团副总裁,数据库产品事业部负责人,ACM、CCF、IEEE会士(Fellow)李飞飞发表《从数据到智能:Data+AI驱动的云原生数据库》主题演讲。他表示,数据是生成式AI的核心资产,大模型时代的数据管理系统需具备多模处理和实时分析能力。阿里云瑶池将数据+AI全面融合,构建一站式多模数据管理平台,以数据驱动决策与创新,为用户提供像“搭积木”一样易用、好用、高可用的使用体验。
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
|
人工智能 关系型数据库 分布式数据库
拥抱Data+AI|“全球第一”雅迪如何实现智能营销?DMS+PolarDB注入数据新活力
针对雅迪“云销通App”的需求与痛点,本文将介绍阿里云瑶池数据库DMS+PolarDB for AI提供的一站式Data+AI解决方案,助力销售人员高效用数,全面提升销售管理效率。
|
SQL 关系型数据库 索引
关系型数据库SQLserver插入数据
【7月更文挑战第28天】
206 4
|
10月前
|
存储 关系型数据库 分布式数据库
PolarDB PG 版冷热数据分层功能介绍
本文介绍了云原生数据库PolarDB PG版的冷热数据分层存储功能,涵盖其原理、特性及最佳实践。冷热分层存储通过将冷数据归档至OSS(对象存储服务),实现低成本高效存储,同时保持SQL操作透明性和性能优化。支持多种分层模式,如表与索引分层、大字段独立归档等,并提供压缩和缓存机制以提升访问速度。此外,还介绍了如何通过DDL语句轻松转存数据至OSS,以及一系列最佳实践,包括自动冷热分层、无锁表转存和一键转存等功能。
640 36
|
9月前
|
SQL 关系型数据库 分布式数据库
PolarDB 开源基础教程系列 7.1 快速构建“海量逼真”数据
本文介绍了如何使用PostgreSQL和PolarDB快速生成“海量且逼真”的测试数据,以满足不同业务场景的需求。传统数据库测试依赖标准套件(如TPC-C、TPC-H),难以生成符合特定业务特征的复杂数据。通过自定义函数(如`gen_random_int`、`gen_random_string`等)、SRF函数(如`generate_series`)和pgbench工具,可以高效生成大规模、高仿真度的数据,并进行压力测试。文中还提供了多个示例代码展示.
260 7
|
9月前
|
人工智能 关系型数据库 分布式数据库
阿里云PolarDB重磅发布云原生与Data+AI新特性,打造智能时代数据引擎
阿里云PolarDB重磅发布云原生与Data+AI新特性,打造智能时代数据引擎
546 0
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云瑶池在2024云栖大会上重磅发布由Data+AI驱动的多模数据管理平台DMS:OneMeta+OneOps,通过统一、开放、多模的元数据服务实现跨环境、跨引擎、跨实例的统一治理,可支持高达40+种数据源,实现自建、他云数据源的无缝对接,助力业务决策效率提升10倍。
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云数据库重磅升级!元数据服务OneMeta + OneOps统一管理多模态数据
|
关系型数据库 分布式数据库 数据库
基于PolarDB的图分析:通过表格将数据快速导入到图
本文介绍了使用 PolarDB PostgreSQL兼容版的AGE插件时,在大数据量下,快速导入数据的方法。可以快速将图数据库中亿级以上的节点和边快速导入到数据库中,避免了插入边时进行查询带来的性能瓶颈。