PolarDB-X内核新版本:更精细的数据管理

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 在最新版本PolarDB-X内核5.4.14中,我们继续加强了作为企业级产品的数据可管理性,使其更加适应企业的诉求。


概览


非常高兴为大家带来PolarDB-X内核5.4.14版本。在最新版本中,我们继续加强了作为企业级产品的数据可管理性,使其更加适应企业的诉求。


对于分布式数据库而言,海量数据的管理是一个细致性工作。除了提供必备能力外,是否能更加精细化,是用户做选择时的一个重要考量,可管理性的深度也会直接影响到用户实际使用数据库的成本。此外,新版本还提供了更加强大的SQL能力,更好的MySQL兼容性,为用户提供更好的服务,是我们长期追求的目标。


针对这些方向,PolarDB-X在内核5.4.14版本中提供的冷热数据存储分离、数据Locality、数据热点诊断、并行DML优化、Flashback Query和AUTO_INCREMENT兼容性,大幅提升了数据的可管理性、SQL处理能力和兼容性,并针对数据热点问题为用户提供了更多运维手段。这些努力加在一起,用户将获得更专业的使用体验,让PolarDB-X在成熟的云原生分布式数据库道路上更向前迈进。


除此之外,在这一版本中相较于前序版本也有了长足的进步,修复了 16个 Issues,并融入了24个增强特性。我们会持续将新版本的功能,开放同步到开源社区。


更精细的数据管理


对数据的可管理性是数据库的一个重要能力维度, 我们总结了用户和市场的反馈,这里包含了「控制数据具体的存储位置」,「按照数据的访问频度进行区分管理」,「直观的数据分布管理」,PolarDB-X 5.4.14版本从内核等多个方面针对这些问题进行了加强。


冷热数据存储分离


让我们先看一个有趣的场景。


在数据库的使用过程中,每天有大量的数据写入和更新。然而,通常只有时间邻近的,如一个月内,甚至一周内的数据才会被频繁更新和访问。而剩下的大量数据,都默默躺在磁盘的角落中,给存储空间带来了极大的浪费,也增加了数据库维护的成本。


你希望将热数据保留在高性能的存储设备中,用于应对日常频繁的写入与更新,满足用户对事务型数据处理的需要;冷数据则被迁移到低成本的存储设备里,减轻热数据的维护压力,但同时能对冷数据进行查询和局部订正。


在PolarDB-X 5.4.14版本中,我们基于OSS存储服务,推出冷热数据分离存储这一新功能,您可以便捷地将冷数据从源表中剥离出来,归档至更低成本的OSS中,形成一张归档表。同时,归档表支持高效的主键与索引点查、复杂分析型查询,满足高可用、MySQL兼容性和任意时间点闪回等特性,您可以像访问MySQL表一样来访问归档表。



PolarDB-X 冷热分离存储充分利用了OSS服务成本低、容量大的优良特性,将冷数据快速高效地从在线库中剥离出来,减轻了在线数据维护压力、以及在线库的规模成本,降低了全量数据的存储成本。同时,提供与MySQL兼容的访问方式,兼顾点查与分析型查询的性能,并支持大数据产品的接入。


数据Locality


分布式数据架构下,数据进行了打散分布,但从业务角度出发,往往又需要将一类数据进行集中式存储。如何指定数据存储的位置,PolarDB-X 5.4.14针对此类问题提出了数据Locality解决方案。


定义分区级别隔离(替代多租户机制)


通过指定分区级别的Locality,可以将同一张逻辑表的不同分区控制在不同存储节点上,目前Locality对Range、Hash、LIST三种分区方式均支持。



定义单表存储位置


通过指定单表的Locality可以使单表分布于不同存储节点上,从而隔离其物理存储资源。




数据热点诊断


在分布式数据架构下,最理想的情况就是各分区间数据和流量都是均衡的,能充分发挥出多节点的分布式处理能力。为了达到最理想的效果,就要求数据库尽量避免出现热点分区,包括流量的热点和数据量的热点。避免热点的出现,首先就需要能快速便捷地发现热点分区,从而能进行针对性的处理。因此,快速准确地找出热点分区就成为分布式数据库所需的一项重要能力。


功能概述


首先选取一个小范围数据做介绍,如下图,纵轴表示了逻辑库、逻辑表、逻辑分区间的关系,并且分区按照逻辑序号进行排序。横轴表示时间,图像下方和右方的柱形图表示了汇总数据,下方柱形图表示纵向的求和,即某时刻所有分区的访问量的求和,右方的柱形图表示横向的求和,即某分区所有时间范围内的访问量求和。



存储节点视角


可以清晰直观的看到数据在物理存储节点是否均衡,数据在各个Partition中分布情况,是否存在物理存储节点的热点。



TPC-C热点分析


用TPC-C流量进行测试,可以看到一个完整的热力分布情况,从图中可以明显发现TPC-C的流量存在两块热点区域,并且通过纵轴的宽度对比也能发现数据量的热点。




更强大的SQL能力


并行DML优化


分布式数据库基于并行计算的DML以及大事务的支持能力,可以有效满足跑批处理和执行效率。在新版本中,采用多线程操作,同时运行解析任务和执行物理计划;将原来单个逻辑任务内调度变成多个逻辑任务共同调度,大大提升了执行效率。




优化后,对于单条SQL引发大规模数据修改时,能够提升2倍左右的性能,特别适合于大事务、数据导入导出场景。


Flashback Query功能


在 IT 圈内,“删库跑路”已经成为程序员经常提及的一句玩笑话。虽然是玩笑话,却反映了数据库对企业的重要性。删库跑路事件不常有,但因粗心导致的误删数据却屡见不鲜。要么手误,要么发布的代码存在bug,导致数据被误删,虽是无心,但是破坏力惊人。首先,我们以一个实际误删数据的事故开场。



我们来梳理下事故的时间线:


T1:小明维护了一张员工表,里面记录着公司的员工信息。


T2:小明需要删除Mary的记录,因此他到数据库里面执行了一条 DELETE 语句,本意是想删除用户 Mary 的记录,但是因为手贱,漏了一个and语句, 导致员工 Ralph 的数据也被意外删除。


T3:此时业务仍在继续,John 被删除, Tim 和 Jose 被插入到表中。而此时粗心的小明发现了数据被误删,迫切希望恢复数据。


围绕这一次的数据误删事故,看看 PolarDB-X 是如何拯救粗心的小明的?


PolarDB-X 在新版本提供Flashback Query功能,针对行级误删场景,提供短时间内误操作的快速回退能力。



错误SQL发生时,变更都会记录在版本为 Vn+1 的 undo log 中;T2 时,发现了误改问题并确定误操作时间和影响的数据范围;通过 Flashback Query 能力直接查到了被影响的两行记录在 T1 时刻正确的值;根据 Flashback Query 返回的正确值对数据进行了订正。



更好的MySQL兼容性


AUTO_INCREMENT兼容性


分布式数据库提供全局唯一数字序列的主要目的是为了生成全局唯一和有序递增的数字序列,常用于主键列、唯一索引列等列值的生成。


在新版本中,为了与MySQL自增列的特性保持良好的兼容性,PolarDB-X提供了全局唯一、连续、单调递增的New Sequence,产生的值是默认从1开始的自然数序列。在AUTO模式库中建表时,指定AUTO_INCREMENT自增列,将默认自动为该表创建并关联一个New Sequence对象,用于在INSERT时自动填充自增列的值。


展望


我们在云原生分布式数据库发展的道路上,不断的前进和提升,PolarDB-X 内核5.4.14版本是一个小小的里程碑,也是我们前进的新起点。在后续的版本规划中,我们将继续推出灵活计算存储解耦、数据表优化等技术,为用户提供超越以往形态的使用体验。


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
相关文章
|
SQL 关系型数据库 数据库连接
python库之—psycopg2
python库之—psycopg2
|
4月前
|
传感器 人工智能 边缘计算
宠物识别算法在智能猫窝上的应用:区域预警、Vlog生成与睡眠监测一体化方案
基于边缘计算与多传感器融合,智能猫窝集成宠物识别算法,实现区域预警、Vlog自动生成与睡眠监测一体化。通过AI视觉、毫米波雷达等技术,精准识别宠物行为,助力远程看护与健康管理,提升人宠情感连接,打造智慧养宠新体验。
401 1
|
3月前
|
IDE 搜索推荐 开发工具
Visual Studio 2022 Enterprise 17.14.25 Offline (2026 年 1 月更新)
Microsoft Visual Studio 2022 离线安装包 - 简体中文 | 繁體中文 | English
458 3
Visual Studio 2022 Enterprise 17.14.25 Offline (2026 年 1 月更新)
|
7月前
|
边缘计算 安全 网络协议
计算机网络
计算机网络是数字时代的隐形脉络,从ARPANET到万物互联,重塑社会、经济与文明。它打破时空边界,推动信息革命,也带来安全与伦理挑战。作为现代文明的基石,其未来在于速度与智能,更在于如何以人为本,构建开放、安全、包容的连接世界。
|
8月前
|
Rust Ubuntu Java
官方支持长达12年!Ubuntu 24.04 LTS正式开放升级:Linux 6.8内核
对于开发者而言,Ubuntu 24.04 LTS在性能工程和机密计算方面迈出了重要一步,包含了Python 3.12、Ruby 3.2、PHP 8.3和Go 1.22等最新编程语言版本,重点优化了对.NET、Java和Rust等开发环境的支持。
|
人工智能 监控 算法
AI计算机视觉笔记二十 八:基于YOLOv8实例分割的DeepSORT多目标跟踪
本文介绍了YOLOv8实例分割与DeepSORT视觉跟踪算法的结合应用,通过YOLOv8进行目标检测分割,并利用DeepSORT实现特征跟踪,在复杂环境中保持目标跟踪的准确性与稳定性。该技术广泛应用于安全监控、无人驾驶等领域。文章提供了环境搭建、代码下载及测试步骤,并附有详细代码示例。
1965 1
|
12月前
|
JSON 前端开发 Java
彻底搞定 Spring 中的 @PathVariable 和 @ResponseBody
本文深入解析了Spring MVC中`@PathVariable`和`@ResponseBody`的使用方法及适用场景。`@PathVariable`用于从URL路径提取变量,增强REST风格接口的语义性;`@ResponseBody`则将方法返回值直接写入HTTP响应体,适合返回JSON或XML数据。通过多个实际案例,展示了两者在不同场景下的应用,如删除商品、获取商品详情等。文章还总结了最佳实践,帮助开发者更好地理解与运用这两个注解,提升接口设计的清晰度与可维护性。
372 0
|
消息中间件 Java
RabbitMQ生产者消者费代码案例 (Demo超详细)
hello你好,我是辰兮,很高兴你能来阅读,本篇继续分享消息队列的实践案例,分享给初学者,大家一起进步!
841 0
RabbitMQ生产者消者费代码案例 (Demo超详细)
|
机器学习/深度学习 IDE 开发工具
Python集成开发环境
【7月更文挑战第6天】Python集成开发环境
454 1
|
前端开发 JavaScript 安全
Angular AOT 编译大揭秘!详解提升应用启动速度的关键技术,让你的 Angular 应用飞起来!
【8月更文挑战第31天】本文探讨了提升Angular应用性能的关键技术——AOT(提前编译)。文章首先解释了AOT编译的概念,对比JIT(即时编译),说明其在减少应用启动时编译时间方面的优势。接着详细阐述了AOT编译带来的三大好处:提高启动速度、增强安全性和改善代码可维护性。然后,提供了使用AOT编译的具体步骤,包括安装Angular CLI、创建应用、配置AOT选项及构建运行应用等。最后,提醒开发者注意模板语法、依赖注入及第三方库兼容性等问题,并通过一个简单的组件示例展示如何利用AOT编译优化应用。
301 0

相关产品

  • 云原生分布式数据库 PolarDB-X
  • 云原生数据库 PolarDB