本文是系列文章的第一篇,介绍第一个重要话题:“数据库的分布式事务”,这也是目前普通用户面对分布式数据库产品介绍问的最多的一个内容,如何有效评测分布式事务也是一个非常重要的能力。致敬同行,我们将PolarDB-X事务架构设计上的一些思考和测试方式,做了整理和梳理,期望能对大家更好的理解分布式事务的测试有所帮助。
MySQL的内存分配、使用、管理的模块较多,本篇文章主要介绍InnoDB层和SQL层内存分配管理器,主要包括ut_allocator、mem_heap_allocator和MEM_ROOT,代码版本主要基于8.0.25。
Dataphin v3.13引入了跨节点参数功能,允许任务间传递消息。输出节点(如SQL、Shell、Python任务)能输出参数,输入节点可以接收并使用这些参数。此功能解决了通过公共存储中转消息的复杂性和低效问题。应用场景包括:金融企业的币种转换,其中汇率任务(输出节点)提供汇率,转换任务(输入节点)使用该汇率;以及产品目录更新检查,通过跨节点参数控制是否需要执行数据导入任务。用户可以通过任务编辑器设置和传递跨节点参数,并在运维中进行补数据操作。
PolarDB-X 分布式数据库,采用集中式和分布式一体化的架构,为了能够灵活应对混合负载业务,作为数据存储的 Data Node 节点采用了多种数据结构,其中使用行存的结构来提供在线事务处理能力,作为 100% 兼容 MySQL 生态的数据库,DN 在 InnoDB 的存储结构基础上,进行了深度优化,大幅提高了数据访问的效率。