Greenplum分布式事务和两阶段提交协议
Components 数据库管理系统组成图 Hector Garcia-Molina /Jeffrey D.Ullman/Jennifer Widom《数据库系统实现》 查询编译器/ 优化器 事务管理器 DDL编译器 执行引擎 日志和恢复 并发控制 索引/文件/ 记录管理器 缓冲区管理器 缓冲区 锁表 存储管理器 存储 查询计划 对索引、文件和 记录的请求 页命令 事务命令 两阶段提交协议 ● Jim Gray等研究者在1978年提出了两阶段提交协议,用于保证分布式事务提交的原子性 ● 可以用于单机集中式系统,由事务管理器协调多个资源管理器;也可以用于分布式系 统,由一个全局的 事务管理器协调各个子系统的局部事务管理器完成两阶段提交 ● 广泛应用于商业分布式数据库 ❏ A节点是事务的协调者(coordinator) ❏ B和C是事务的参与者(participant) 恢复成功后,删掉pg_twophase目录下的文件 《数据库系统概念》19.4.1.3节,参与者在响应prepare消息之前记录32 Greenplum实现分布式事务与并发控制 • 分布式事务管理 • 分布式事务的创建、状态迁移等 • QD向QE发起两阶段提交 • 分布式快照 • QD向QE发送全局快照信息 • Writer QE和Reader QE共享本地快照信息 • distributed 0 码力 | 42 页 | 2.12 MB | 1 年前3Greenplum数据库架构分析及5.x新功能分享
Confidential–Inter nal Use Only 分布式事务 本地存储 主节点Segment 系统表 分布式事务 Interconnect 执行器 解析器 主节点上的分布式 事务管理器协调 Segment上的提交和 回滚操作 Segments 有自己的 事务日志,确定合 适提交或回滚自己 的事务 主节点 Segment 实例 本地事务 执行器 系统表 本地存储0 码力 | 44 页 | 8.35 MB | 1 年前3Greenplum 精粹文集
Postgresql 数 据库实例同时开展并行计算。而且,这些 Postgresql 之间采用 share- nothing 无共享架构,从而更将这种并行计算能力发挥到极致,除此之 外,MPP 采用两阶段提交和全局事务管理机制来保证集群上分布式事 务的一致性,Greenplum 像 Postgresql 一样满足关系型数据库的包括 ACID 在内的所有特征。 从上图可以看到,Greenplum 的最小并行单元不是节点层级,而是在0 码力 | 64 页 | 2.73 MB | 1 年前3
共 3 条
- 1