核心特性—全局二级索引
全局二级索引(Global Secondary Index,GSI)是PolarDB-X中的一项重要特性,相比于本地二级索引,全局二级索引中的数据按照指定的拆分方式分布在各个存储节点上。通过全局二级索引,用户能够按需增加拆分维度、提供全局唯一约束等。
核心特性—MySQL生态兼容
PolarDB-X将兼容MySQL以及周边生态作为核心设计目标之一。本文从SQL语法、事务行为、导入导出等维度总结了兼容性的相关特性。
核心特性—分布式线性扩展
数据物理分布 PolarDB-X将数据表以水平分区的方式,分布在多个存储节点(DN)上。数据分区方式由分区函数决定,PolarDB-X支持哈希(Hash)、范围(Range)等常用的分区函数。 以下图为例,shop库中的orders表根据每行数据的id属性进行哈希,被分区水平切分成orders_00~orders_11共计12个分区,均匀分布在4个数据节点上。PolarDB-X的分布式SQL层将会自动完成查询路由、结果合并等。
核心特性—强一致分布式事务
ACID分布式事务 PolarDB-X原生支持分布式事务,并保证事务的ACID性质。 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability) PolarDB-X通过引入中心授时节点(TSO),结合多版本并发控制(MVCC),确保读取到一致的快照,而不会读到事务的中间状态。如下图所示,提交事务时,计算节点(CN)执行事务时从TSO获取到时间戳,随着数据一同提交到存储节点(DN)多版本存储引擎上,CN通过读取快照时间戳去DN上读取相应版本的数据。
核心特性—高可用性与容灾
在生产环境部署数据库时,往往会搭建多个副本(Replica),保证数据库集群的高可用性以及数据的持久性。传统的部署方式是一主一备,即主备间通过日志同步数据变更。但是主备复制存在先天性缺陷,以常见的MySQL半同步复制为例,一旦网络延迟超出阈值,同步就会退化到异步复制。此时如果主节点宕机,副本可能丢失已提交的数据,也就是常说的副本不一致。
产品简介—PolarDB-X适用场景
高负载低延时交易 场景描述 交易场景广泛存在于互联网业务中,交易系统是信息系统中最为核心的组件之一。业务连续性、事务一致性和系统安全性是交易系统正常运1行的基础,长时间高负载低延时的运行是互联网时代交易系统的发展方向。 产品能力 PolarDB-X采用搭载自研多数派共识协议X-Paxos,并应用于存储节点提供三副本强一致能力,确保高可用切换和容灾场景下RPO=0。基于全局时钟TSO策略和分布式的MVCC多版本,分布式事务可确保多节点数据访问的事务一致性。PolarDB-X通过中国信通院《金融级分布式事务数据库稳定性专项评测》,且持续12年支撑“双十一”全球购物狂欢节,集稳定性与高性能于一身。
产品简介—PolarDB-X历史
前言 2009年,阿里巴巴在进行年度收支核算时,发现业务对数据存取资源的需求呈指数级扩张,并与业务指标增长之间产生鸿沟。此时的阿里巴巴清晰的意识到,如果不通过技术创新平衡成本和增长需求,必将对未来发展产生影响。 1.于是"去IOE"的说法被首次提出。"去IOE"的目的绝不仅仅是摆脱几个传统IT厂商的产品,而是在互联网+、云计算快速兴起后,企业用户迫切需要能够保证其业务发展和创新的更加开放、灵活、高效的IT基础架构。概括地说,"去IOE"推动了用横向扩展取代纵向扩展,用开源软件代替商业软件的进程,可以看作是云计算的奠基之举。 2.其中对传统商业数据库的替换又是"去IOE"的核心。
产品简介—PolarDB-X简介
产品介绍 PolarDB-X是阿里云面向高吞吐、大存储、低延时、易扩展和超高可用的云时代数据库使用需求,自主设计研发的高性能云原生分布式数据库产品。 PolarDB-X始终保持对阿里巴巴集团“双十一购物狂欢节”所有相关业务的全面支撑。历经十余年淬炼,PolarDB-X具备了强数据一致性、高系统稳定性、快速集群弹性等核心关键特性,并在司法财税、交通物流、电力能源等公共事业领域有广泛深入应用。 PolarDB-X坚定遵循自主可控、开放生态的发展思路,持续围绕MySQL开源生态构建分布式能力,以求最大程度降低用户的学习使用成本。
PolarDB-X 2.0:使用一个透明的分布式数据库是一种什么体验
简介: 透明分布式,是PolarDB-X即将发布的能力,它能让应用在使用PolarDB-X的过程中,犹如使用单机数据库一般的体验。与传统的中间件类型的“分布式数据库”相比,有了透明分布式能力的PolarDB-X,不再需要应用考虑分区键的概念,应用可以完全将单机MySQL上开发的建表语句、应用代码直接迁移到PolarDB-X上运行起来。本文将为大家介绍PolarDB-X透明分布式的新体验。
LogIndex
PolarDB采用了共享存储一写多读架构,读写节点RW和多个只读节点RO共享同一份存储,读写节点可以读写共享存储中的数据;只读节点仅能各自通过回放日志,从共享存储中读取数据,而不能写入,只读节点RO通过内存同步来维护数据的一致性。
DDL_Synchronization
在共享存储一写多读的架构下,数据文件实际上只有一份。得益于多版本机制,不同节点的读写实际上并不会冲突。但是有一些数据操作不具有多版本机制,其中比较有代表性的就是文件操作。
Buffer_Management
PolarDB的实现是基于共享存储的一写多读架构,主备使用共享存储中的一份数据。读写节点,也称为主节点或Primary节点,可以读写共享存储中的数据;只读节点,也称为备节点或Replica节点,仅能各自通过回放日志,从共享存储中读取数据,而不能写入。
PolarDB PostgreSQL更新路计划
PolarDB PostgreSQL将持续发布对用户有价值的功能。当前我们计划了5个阶段:
从架构层面分析PolarDB技术要点
PolarDB PostgreSQL(以下简称PolarDB)是一款阿里云自主研发的企业级数据库产品,采用计算存储分离架构,兼容PostgreSQL与Oracle。
什么是PolarDB PostgreSQL
PolarDB PostgreSQL(下文简称为PolarDB)是一款阿里云自主研发的云原生数据库产品,100%兼容PostgreSQL,采用基于Shared-Storage的存储计算分离架构,具有极致弹性、毫秒级延迟、HTAP的能力。
PolarDB-X 的诞生和发展
数据库系统是一个历史悠久却又生机勃勃的领域,1970s Edgar F. Codd 提出关系模型,随后有了 IBM System R 关系数据库原型的故事。
PolarDB for PostgreSQL 1.0
PolarDB for PostgreSQL 1.0 Release date: 2021-6-29
PolarDB 为什么要解决FPW的性能问题?
full page write解决什么问题? 为什么full page write是按其葫芦起来了瓢? 如何彻底解决FPW问题?
PolarDB for PostgreSQL 三节点开源版 集群管理
PolarDB for PostgreSQL 集群管理: 切换主节点、停止集群、启动集群、添加节点、集群状态监控等.
PolarDB for PostgreSQL 三节点开源版 3主机集群部署实践
PolarDB for PostgreSQL 三节点开源版本在3台主机上的部署例子.
PolarDB开源
PolarDB 是阿里云自研的云原生数据库产品家族,采用存储计算分离、软硬一体化设计,既拥有分布式设计的低成本优势,又具有集中式的易用性,可满足大规模应用场景需求。 2021年,阿里云先后宣布PolarDB PostgreSQL版与PolarDB分布式版开源,并持续推动开源版本迭代和演进,助力开发者通过开源版本快速使用阿里云数据库产品技术,并参与产品迭代中来。 开源历程参见:OpenPolarDB.com/about