PolarDB
架构
- 元数据服务(Global Meta Service,GMS),主要提供分布式的元数据,提供全局授时服务(TSO)、维护Table/Schema、Statistic等Meta信息、维护账号、权限等安全信息。
- 计算节点(Compute Node,CN),主要提供分布式SQL引擎,包含核心的优化器和执行器。基于无状态的SQL引擎提供分布式路由和计算,解决分布式事务2PC协调、分布式DDL执行、全局索引维护等。
- 存储节点 (Data Node,DN),主要提供数据存储引擎,基于多数派Paxos共识协议提供高可靠存储、分布式事务的MVCC多版本存储,另外提供计算下推能力满足分布式的计算下推要求(比如Project/Filter/Join/Agg等下推计算),可支持本地盘和共享存储。
- 日志节点(Change Data Capture,CDC),主要提供兼容MySQL生态的主备复制协议,兼容Binlog协议和数据格式、支持主备复制Replication的协议和交互。
- 列存节点(Columnar), 主要提供持久化列存索引,实时消费分布式事务的binlog日志,基于对象存储介质构建列存索引,能满足实时更新的需求、以及结合计算节点可提供列存的快照一致性查询能力。
DN
PolarDB-X将数据表以水平分区的方式,分布在多个存储节点(DN)中。数据分区方式由分区函数决定,PolarDB-X支持哈希(Hash)、范围(Range)等常用的分区函数。
随着业务的增长,数据量越来越大,往往需要添加更多的数据节点以承载更多的数据。当新的数据节点加入实例时,PolarDB-X将自动触发扩容任务,将数据进行再平衡(Rebalance)。
保证数据库实例的高可用性以及数据的持久性。为了保证副本间的强一致性,现代数据库往往采用以Paxos算法为代表的多数派复制协议,它要求实例中至少存在3个节点,每次写入都要获得超过半数节点的确认,即便其中1个节点宕机实例也仍然能正常提供服务。PolarDB-X采用X-Paxos复制协议,X-Paxos是阿里巴巴自研的Paxos协议实现,在功能、性能上都做了大量优化,且经历了数十载的双十一考验,稳定可靠。
应用场景
分布式领域数据库
Loading...