热门问题-技术问答-汇集知识碎片解决技术难题-阿里云开发者社区-阿里云

PolarDB-X 是由阿里自主研发的原生 MySQL 分布式数据库,兼容 MySQL 协议与客户端,具备自动负载均衡、高可用、HTAP 混合负载、支持分布式事务、全局二级索引等重要特性,专注解决超高并发吞吐、海量数据存储、大表瓶颈等数据库瓶颈难题,历经各届天猫双 11 及全行业客户业务的考验,其诞生最早可以追溯至阿里在 2009 年发起的“去 IOE”运动。 当时,为了实现对 Oracle 的替换,并避免以后出现卡脖子情况,阿里将技术的自力更生和自主可控作为核心诉求。一方面,随着 x86 技术日趋成熟,稳定性与小型机的差距不断缩小;另一方面,MySQL 采用轻量化线程模型并具备高并发的支持能力,其生态逐步完善,因此新方案采用了基于 Sharding 技术 + 开源 MySQL 的分布式架构( TDDL + AliSQL )。而这,也被称为 PolarDB-X 0.5 版本时代,这代产品的特征是以解决扩展性为目标、面向系统架构使用,尚不具备产品化能力。 随着这套架构逐渐成熟,2014 年开始,阿里云推出了 DRDS + RDS 的分布式云数据库服务,这也被称为 PolarDB-X 1.0 时代。这代产品的特征是采用 Share-Nothing 架构、以解决存储扩展性为出发点、提供面向用户的产品化交付能力。针对用户使用中的痛点,阿里云不断进行产品能力迭代,陆续支持了分布式事务、全局二级索引、异步 DDL 等内核特性,持续改进 SQL 兼容性,实现子查询展开、Join 下推等复杂优化,并开发了平滑扩容、一致性备份恢复、SQL 闪回、SQL 审计等运维能力。 2018 年开始,PolarDB-X 进入 2.0 时代,持续探索基于云架构的分布式数据库形态。2019 年,PolarDB-X 团队完成 DRDS SQL 引擎和 X-DB 数据库存储技术的融合,并结合 PolarDB 的云原生特性,承上启下推出了新一代的云原生分布式数据库。 目前,PolarDB-X 共有 1.0 和 2.0 两种形态。其中,PolarDB-X 1.0 版由计算层 PolarDB-X 实例和存储层私有定制 RDS 实例组成,通过挂载多个 MySQL 进行分库分表,提供多种贴合 OLTP 业务的拆分方案,解决高并发、大数据量存储、在线计算的扩展性难题。PolarDB-X 2.0 版是云原生分布式数据库,支持全局 MVCC 的强一致的分布式事务、私有 RPC 协议带来的性能提升、Follower 上的一致性读能力等,运维管理更加便捷。 其中,主要有三点核心技术: 1. 基于 Paxos 的一致性存储 阿里多年在异地多活的场景下,打磨 Paxos 的一致性共识协议,经过了几年双十一的生产级业务的沉淀,基于多分组 Paxos 的技术,将为 PolarDB-X 提供一致性的数据保证。除了 Paxos 的基础功能外,在生产环境下也沉淀了比较多的企业特性,比如:Paxos 多分组合并、日志型副本、热点更新优化、高可用检测等。 2. 强一致分布式事务 采用业界比较主流的全局时钟 TSO + MVCC 的策略,结合 2PC、Paxos 等相关技术,提供可严格满足金融转账场景的事务一致性。 3. 分布式 SQL 引擎 (CBO 优化器、并行计算) 基于存储计算分离、分布式等特性,基于全新的 volcano/cascade 优化器模型,提供了 Partition Aware 的计算下推,支持满足 HTAP 场景的索引选择以及原生 MPP 的并行计算优化等。 得益于云原生技术对数据库的彻底重构,数据库服务已成为按需取用、安全可靠、成本低廉的服务。云原生分布式数据库具备易用性、高扩展性、快速迭代、节约成本等特征,是未来必然的发展趋势,可以解决企业用户的核心诉求。

阿炜小菜鸡 评论 0

54

回答

FantuanTech 2022-02-16 62790浏览量 回答数 54

17

回答

May-Hologres 2022-03-15 36907浏览量 回答数 17

15

回答

15

回答

游客l6i2y5hfabfus 2022-02-25 27013浏览量 回答数 15

29

回答

公主的心上人 2022-02-10 24886浏览量 回答数 29

23

回答