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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 非常高兴为大家带来PolarDB-X内核5.4.14版本。在最新版本中提供了冷热数据存储分离、数据Locality、数据热点诊断、并行DML优化、Flashback Query和AUTO_INCREMENT兼容性,大幅提升了数据的可管理性、SQL处理能力和兼容性,并针对数据热点问题为用户提供了更多运维手段。


概览

非常高兴为大家带来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版本是一个小小的里程碑,也是我们前进的新起点。在后续的版本规划中,我们将继续推出灵活计算存储解耦、数据表优化等技术,为用户提供超越以往形态的使用体验。

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
相关文章
|
3月前
|
运维 Cloud Native 数据管理
云原生数据库:下一代数据管理的趋势与挑战
【9月更文挑战第4天】云原生数据库作为下一代数据管理的趋势,正以其独特的优势引领着数据管理领域的变革。然而,在快速发展的同时,云原生数据库也面临着诸多挑战。未来,随着技术的不断进步和市场的不断成熟,云原生数据库将不断优化和完善,为企业数字化转型提供更加高效、安全、灵活的数据管理服务。同时,我们也需要关注并解决其面临的挑战,推动云原生数据库技术的健康发展。
|
2月前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
201 5
|
3月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
3月前
|
关系型数据库 MySQL 分布式数据库
PolarDB开源社区动态:最新版本功能亮点与更新解读
【9月更文挑战第6天】随着云计算技术的发展,分布式数据库系统成为企业数据处理的核心。阿里云的云原生数据库PolarDB自开源以来备受关注,近日发布的最新版本在内核稳定性、性能、分布式CDC架构及基于时间点的恢复等方面均有显著提升,并新增了MySQL一键导入功能。本文将解读这些新特性并提供示例代码,帮助企业更好地利用PolarDB处理实时数据同步和离线分析任务,提升数据安全性。未来,PolarDB将继续创新,为企业提供更高效的数据处理服务。
231 3
|
4月前
|
关系型数据库 MySQL 分布式数据库
PolarDB开源社区动态:最新版本功能亮点与更新解读
随着云计算的发展,阿里云的云原生分布式数据库PolarDB受到广泛关注。最新版本通过X-Paxos等先进算法优化了内核稳定性和性能,增强了分布式CDC架构以支持实时数据同步和离线分析,并引入了基于时间点的恢复功能(PITR)确保数据安全。此外,新增MySQL一键导入PolarDB-X功能简化迁移流程。这些改进将进一步提升PolarDB在企业级数据处理中的竞争力。
224 1
|
5月前
|
存储 关系型数据库 分布式数据库
开发者评测指南针对PolarDB开源版本的部署安装
开发者评测指南针对PolarDB开源版本的部署安装
168 2
|
6月前
|
关系型数据库 Serverless 分布式数据库
PolarDB产品使用问题之普通版本的集群如何迁移到Serverless集群
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
6月前
|
关系型数据库 MySQL 分布式数据库
PolarDB产品使用问题之如何进行版本回退
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
2月前
|
关系型数据库 MySQL 分布式数据库
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶,邀请好友完成更有机会获得​小米Watch S3、小米体重称​等诸多好礼!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
|
3月前
|
关系型数据库 MySQL Serverless
探索PolarDB MySQL版:Serverless数据库的灵活性与性能
本文介绍了个人开发者对阿里云PolarDB MySQL版,特别是其Serverless特性的详细评测体验。评测涵盖了产品初体验、性能观测、Serverless特性深度评测及成本效益分析等方面。尽管试用过程中遇到一些小问题,但总体而言,PolarDB MySQL版表现出色,提供了高性能、高可用性和灵活的资源管理,是个人开发者和企业用户的优秀选择。

热门文章

最新文章