Greenplum分布式事务和两阶段提交协议greenplum.org 博文 资料 文档 项目 全新的问答论坛 分布式事务和 两阶段提交协议 6 ● 事务实现原理和Write Ahead Logging(WAL) ● 分布式事务和两阶段提交的原理 ● Greenplum两阶段提交协议的实现 ● Greenplum两阶段提交协议的优化 Outline 7 事务的属性:ACID 属性 含义 数据库系统的实现 Atomic Atomic 原子性 事务中的操作要么全部正确执行,要么完全不 执行。 Write Ahead Logging,分布式事务:两阶段提交协议 Consistency 一致性 数据库系统必须保证事务的执行使得数据库 从一个一致性状态转移到另一个一致性状态。 (满足完整性约束) 实现对A、I、D三个属性的支持 Isolation 隔离性 多个事务并发地执行,对每个事务来说,它并 不会感知系统中有其他事务在同时执行。 storage中的页面时,必须记录undo log。保 证事务的原子性。 第二点:No-Force policy。提交事务时,必须记录redo log。保证事务的持久性。 Write Ahead Logging 采用WAL协议的恢复算法: Dr. C. Mohan ARIES: Algorithms for Recovery and Isolation Exploiting Semantics, 1993, IBM DB20 码力 | 42 页 | 2.12 MB | 1 年前3
运维上海2017-从理论到实践,深度解析MySQL Group Replication -徐春阳支持多节点并发执行事务。如何保证从各个节点并发执行 的事务在每个节点以相同的顺序被应用/执行.------paxos协 议的功能。 • 自动地事务冲突检测。节点之间不能”同时”操作主键相同 记录,如果冲突,只有一个节点成功。------冲突检测。 • 节点故障容忍度强。多数派原则,超过半数节点存活的集 群依然整体可用。------paxos协议。 • 更高级别地保证数据的一致性 ------vs mysql的异步/半同 某个节点被丢弃(不处理 ,在其他节点也将被丢弃。 • 多数派原则,一个消息被超过半数的节点接收&”赞成”,则这 个消息将在全局生效,所有的节点都得执行(处理 这个消 息。 • Paxos协议只实现消息全局排序,不处理冲突。 Paxos��:! • 冲突检查是在执行消息(execute_msg)时发生.前提:消息已经被多数节 点接受。 • 所指的消息表示的是一个事务类型的消息,内容包含事务产生的binlog ���������� ������paxos� ��������� ���������� �������GR� ���������� ���waitTicket�� ���������� ��! ����! ��GR��������� �����/��! MGR��������(2)! GR��/��/�������! ���������������! Paxos���������! execute_msg0 码力 | 32 页 | 9.55 MB | 1 年前3
PingCAP TiDB&TiKV Introduction OLTPHDFS TiDB TiKV NewSQL | TiDB Google Spanner / F1 - The First NewSQL ● 全球级别分布式 / 跨数据中心复制 ○ Paxos ● ACID 事务支持 ○ 两阶段提交 ● 无锁快照读 / 无锁只读事务 ○ MVCC ● External Consistency ○ TrueTime API ● SQL 支持 ● the Next 新一代NewSQL分布式关系型数据库 Ti Project (TiDB + TiKV) ● 基于 2013 年 Google Spanner / F1 论文 ● 基于 2014 年 Stanford 工业级分布式一致性协议实现 Raft 论文 概括: 无限水平线性扩展、高并发高吞吐、跨数据中心多活、MySQL 兼容的真正意义上的分布式数据库 ● 我们是全球仅有的在该领域进行技术创新的两家公司之一(对标美国 CockroachDB) JDBC) TiDB TiKV RPC MySQL Protocol F1 Spanner Applications TiDB ● 开源 F1 实现 ● 无状态的分布式 SQL 层 ● MySQL 协议兼容 ● 针对分布式场景的执行计划,优化器 ○ Push-down / MPP ● Online DDL ○ 业务不中断,进行表结构变更 TiDB 逻辑架构 ● 支持关系型的表结构 ● 全局一致索引0 码力 | 21 页 | 613.54 KB | 6 月前3
Kubernetes Operator 实践 - MySQL容器化支持大多数 MySQL 版本 Ø 使用 mysql 半同步复制 Ø 有数据丢失风险 Mysql Group Replication Ø MySQL 官方提供 Ø 5.7 新特性 Ø 基于 Paxos 协议 Ø 写入延迟相对高 MySQL 高可用的实现方式 MHA 高可用简介 • 节点分为 mha-manager、 mha-node • 节点两两间 ssh 免密登录 • 一个 mha-manager0 码力 | 42 页 | 4.77 MB | 1 年前3
Redis 多数据中心双向同步 祝辰Consistency/Availability/Partition在跨区域多活的场景下如何取舍? 显然P(网络分区)是首要考虑因素。 其次,跨区域部署就是为了提高可用性,而且对于常见的一致性协议,不管是2PC、Paxos还是raft,在 此场景下都要做跨区域同步更新,不仅会降低用户体验,在网络分区的时候还会影响可用性,因此C必 定被排在最后。那是不是C无法被满足了呢? Conflict-free Replicated0 码力 | 45 页 | 1.74 MB | 1 年前3
阿里云云数据库 Redis 版 产品简介云数据库 Redis 版 产品简介 产品简介 什么是云数据库 Redis 版 云数据库 Redis 版(ApsaraDB for Redis)是兼容开源 Redis 协议标准的、提供持久化的内存数据库服务,基 于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 云数据库 Redis 版支持字符串(String)、链表( myset 云数据库 Redis 版 产品简介 6 Redis混合存储型实例 Redis混合存储型实例简介 Redis混合存储型实例是阿里云自主研发的完全兼容Redis协议和特性的混合存储产品。通过将部分冷数据存储 到磁盘,在保证绝大部分访问性能不下降的基础上,大大降低了用户成本并突破了内存对Redis单实例数据量的 限制。 与Redis高性能内存型实例差别 被保存在内存中,保证绝大部分访问请求的最高性能 。不常访问的Value(冷数据)则会被存储到磁盘上,以达到内存利用最高性价比。 架构 兼容性 100%兼容Redis协议和特性,用户无需做任何改动。 冷热数据分离 Redis混合存储型实例中,所有的Key和经常访问的Value被保存在内存中,保证绝大部分访问请求的 最高性能。不常访问的Value(0 码力 | 33 页 | 1.88 MB | 1 年前3
Apache ShardingSphere 中文文档 5.0.0SQL92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.1.5 数据库协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.2 数据分片 . . . . . ShardingSphere 站在 数据库的上层视角,关注他们之间的协作多于数据库自身。 连接、增量和可插拔是 Apache ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏) ShardingSphere-Proxy 定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支 持。目前提供 MySQL 和 PostgreSQL(兼容 openGauss 等基于 PostgreSQL 的数据库)版本,它可以使 用任何兼容 MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench0 码力 | 385 页 | 4.26 MB | 1 年前3
Apache ShardingSphere v5.5.0 中文文档33 8.2.7 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 XA 协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 8.2.8 使用限制 . . ShardingSphere‐Proxy 定位为透明化的数据库代理端,通过实现数据库二进制协议,对异构语言提供支 持。 1.2 产品功能 1.3 产品优势 • 极致性能 驱动程序端历经长年打磨,效率接近原生 JDBC,性能极致。 • 生态兼容 代理端支持任何通过 MySQL/PostgreSQL 协议的应用访问,驱动程序端可对接任意实现 JDBC 规范的数 据库。 1 Apache 设计哲学,该理念致力于构建数据库上层的标准和生态,在生态中 补充数据库所缺失的能力。 3 Apache ShardingSphere document 2.1 连接:打造数据库上层标准 通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速构建多模异构数据库上层的标准,同时 通过内置 DistSQL 为应用提供标准化的连接方式。 2.2 增强:数据库计算增强引擎 在原生数据库基础能力之0 码力 | 557 页 | 4.61 MB | 1 年前3
Apache ShardingSphere 中文文档 5.4.133 8.2.7 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 XA 协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 8.2.8 使用限制 . . ShardingSphere‐Proxy 定位为透明化的数据库代理端,通过实现数据库二进制协议,对异构语言提供支 持。 1.2 产品功能 1.3 产品优势 • 极致性能 驱动程序端历经长年打磨,效率接近原生 JDBC,性能极致。 • 生态兼容 代理端支持任何通过 MySQL/PostgreSQL 协议的应用访问,驱动程序端可对接任意实现 JDBC 规范的数 据库。 1 Apache 设计哲学,该理念致力于构建数据库上层的标准和生态,在生态中 补充数据库所缺失的能力。 3 Apache ShardingSphere document 2.1 连接:打造数据库上层标准 通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速构建多模异构数据库上层的标准,同时 通过内置 DistSQL 为应用提供标准化的连接方式。 2.2 增强:数据库计算增强引擎 在原生数据库基础能力之0 码力 | 530 页 | 4.49 MB | 1 年前3
Apache ShardingSphere 中文文档 5.3.233 8.2.7 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 XA 协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 8.2.8 使用限制 . . ShardingSphere‐Proxy 定位为透明化的数据库代理端,通过实现数据库二进制协议,对异构语言提供支 持。 1.2 产品功能 1.3 产品优势 • 极致性能 驱动程序端历经长年打磨,效率接近原生 JDBC,性能极致。 • 生态兼容 代理端支持任何通过 MySQL/PostgreSQL 协议的应用访问,驱动程序端可对接任意实现 JDBC 规范的数 据库。 1 Apache 设计哲学,该理念致力于构建数据库上层的标准和生态,在生态中 补充数据库所缺失的能力。 3 Apache ShardingSphere document 2.1 连接:打造数据库上层标准 通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速构建多模异构数据库上层的标准,同时 通过内置 DistSQL 为应用提供标准化的连接方式。 2.2 增强:数据库计算增强引擎 在原生数据库基础能力之0 码力 | 508 页 | 4.44 MB | 1 年前3
共 66 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













