PolarDB-X V2.4 列存引擎开源正式发布

💡 原文中文,约13700字,阅读约需33分钟。
📝

内容提要

PolarDB-X是一个云原生的分布式数据库,采用共享无关和存储分离的计算架构。它包括计算节点、数据节点、全局元服务、变更数据捕获和列式节点等五个核心组件。PolarDB-X发布了多个版本,包括2.0.0、2.1.0、2.1.1、2.2.0、2.2.1和2.3.0,每个版本都带来了新功能和改进。它提供高可靠性、强一致性,并与MySQL兼容。PolarDB-X还提供全球数据库网络(GDN)功能,用于灾难恢复和多区域主动-主动场景。最新版本2.4.0引入了列式节点,提供持久的列式索引。PolarDB-X与MySQL 8.0.32兼容,并提供多种部署选项,包括RPM包安装、PXD部署工具和Kubernetes运算符。PolarDB-X的开源生态系统不断改进,提供了Polardbx-operator和ProxySQL等工具,用于高可用性和路由。

🔎

延伸解读

列存索引如何实现实时更新与查询加速

PolarDB-X V2.4的列存索引基于Delta+Main二层模型,采用标记删除技术,将更新转化为删除标记加插入,实现行存与列存间秒级数据同步。数据实时写入MemTable,经group commit周期落盘为本地CSV文件并追加至OSS,再由compaction线程转为ORC格式。查询时,CN节点从GMS获取最新TSO,基于快照信息从DN或OSS拉取数据,结合向量化计算完成行列混合计算,从而加速分析查询。

集分一体化架构的平滑升级路径

PolarDB-X V2.3推出集分一体化架构,将分布式中的DN节点独立为集中式形态,支持Paxos多副本和Lizard事务引擎,100%兼容MySQL。当业务增长需要分布式扩展时,架构可原地升级为分布式形态,分布式组件无缝对接原有数据节点,无需数据迁移和应用改造。这种设计兼具分布式扩展性与集中式单机性能,降低了从单机到分布式的迁移门槛。

GDN容灾架构的适用场景与限制

PolarDB-X V2.4的全球数据库网络(GDN)支持跨地域主备复制,复制延迟小于2秒,RPO≤2秒,RTO分钟级。目前仅提供异地容灾形态,异地多活将在后续版本发布。GDN使用兼容MySQL的CHANGE MASTER等命令管理复制链路,支持多种DML复制策略和双向复制防回环。但需注意,当前数据校验仅支持直接校验模式,可能存在误报,基于sync point的快照校验将在下个版本开源。

开源生态部署与运维工具选择

PolarDB-X提供多种部署方式:RPM包适合手工快速部署,PXD工具通过YAML配置简化部署,Kubernetes运算符(polardbx-operator)则面向生产环境,支持备份恢复、透明加密、列存只读、一键诊断等功能。V2.4还适配了ProxySQL作为MySQL中间件,为PolarDB-X标准版提供故障切换和动态路由的高可用保障。用户可根据自身环境选择合适工具,降低运维复杂度。

❓

Q&A

PolarDB-X V2.4版本有哪些新特性?

PolarDB-X V2.4版本引入了列存节点,提供持久化列存索引,支持实时更新和快照一致性查询能力。

PolarDB-X的架构是怎样的?

PolarDB-X采用共享无关和存储分离的计算架构,由计算节点、数据节点、全局元服务、变更数据捕获和列式节点等五个核心组件组成。

PolarDB-X如何保证数据的高可靠性和强一致性?

PolarDB-X通过Paxos协议实现数据的高可靠性和强一致性,确保每次写入都需获得超过半数节点的确认。

PolarDB-X与MySQL的兼容性如何?

PolarDB-X与MySQL 8.0.32兼容,支持MySQL的多种功能,包括DDL能力和SQL执行能力。

PolarDB-X的全球数据库网络(GDN)有什么功能?

GDN用于灾难恢复和多区域主动-主动场景,支持跨地域的主备复制能力,提供就近读的服务能力。

如何快速部署PolarDB-X?

PolarDB-X支持多种快速部署方式,包括RPM包安装、PXD部署工具和Kubernetes运算符。

🏷️

标签

➡️

继续阅读