Greenplum分布式事务和两阶段提交协议项目 全新的问答论坛 分布式事务和 两阶段提交协议 6 ● 事务实现原理和Write Ahead Logging(WAL) ● 分布式事务和两阶段提交的原理 ● Greenplum两阶段提交协议的实现 ● Greenplum两阶段提交协议的优化 Outline 7 事务的属性:ACID 属性 含义 数据库系统的实现 Atomic 原子性 事务中的操作要么全部正确执行,要么完全不 执行。 Write Ahead Logging,分布式事务:两阶段提交协议 Consistency 一致性 数据库系统必须保证事务的执行使得数据库 从一个一致性状态转移到另一个一致性状态。 (满足完整性约束) 实现对A、I、D三个属性的支持 Isolation 隔离性 多个事务并发地执行,对每个事务来说,它并 不会感知系统中有其他事务在同时执行。 多版本并发控制Multi-Version 2PL)、乐观并发控制 (OCC) Durability 持久性 一个事务在提交之后,该事务对数据库的改变 是持久的。 Write Ahead Logging + 存储管理 Jim Gray于1981年VLDB描述了事务的原子性、一致性和持久性,在此基础上,Haerder和Reuter在1983年中提出了事务的隔离性并提出术语 “ACID”,自此,事务的ACID四个性质成为业内标准术语 8 Disk-Oriented0 码力 | 42 页 | 2.12 MB | 1 年前3
Greenplum Database 管理员指南 6.2.1................................................................................... - 86 - 转移临时文件或事务文件的位置 ............................................................................ - 87 - 创建表空间 .. .................... - 171 - 使用事务.......................................................................................................................... - 171 - 事务隔离级别 ........................... .... - 172 - Greenplum Database 管理员指南 V6.2.1 版权所有:Esena(陈淼 +86 18616691889) 编写:陈淼 - 6 - 全局死锁检测 ..................................................................................................0 码力 | 416 页 | 6.08 MB | 1 年前3
Greenplum 6: 混合负载的理想数据平台Greenplum 6: 混合负载的理想数据平台 高小明 全球领先的开源MPP大数据平台 可扩展性 ACID事务 VS 分布式 简单易用 VS 结构化 半结构非结构化 VS 事务型 分析型 VS MPP - massively parallel processing - 大规模并行处理 master standby primary Greenplum在摩根士丹利 OLTP - Online transaction processing - 联机事务处理 出色的OLTP特性 天生的优势 ● 行式存储 ● 索引 ● 直接分发 ● 完整的增删改 Greenplum 6 增强 ● 并发修改、删除 ● 系统性的优化事务和锁 26 Pivotal Confidential–Internal Use Only 行式存储 表‘SALES’ Greenplum 6:并发改删和分布式死锁检测 全局死 锁检测 gpconfig -c ‘gp_enable_global_deadlock_detector’ -v on 31 Pivotal Confidential–Internal Use Only Greenplum 6:锁和事务的优化 表‘SALES’ 表‘SALES’ ■ 大幅减少事务开始和结束时的锁冲突 ■ 消除隐式只读操作(单条SELECT)的锁冲突0 码力 | 52 页 | 4.48 MB | 1 年前3
Greenplum开源MPP数据库介绍©2022 VMware, Inc. 2 Agenda Ø Greenplum简介 Ø Greenplum的MPP架构 Ø 分布式优化器: Postgres planner 和 ORCA Ø 分布式事务和执行 Ø Greenplum存储 Ø Greenplum生态 Ø Greenplum 7 Confidential │ ©2022 VMware, Inc. 3 Greenplum简介:什么是Greenplum VMware, Inc. 7 执行架构 Interconnect Client Ø Coordinator: q 管理其它节点 q 生成分布式计划 q 下发计划和汇总结果 q 管理分布式事务 Ø Segments: q 存储数据,share-nothing q 产生计算进程 Ø Libpq:控制信道 Ø Interconnect: 数据交换信道 Confidential │ 数据的分布模式 Confidential │ ©2022 VMware, Inc. 12 分布式计划举例 Confidential │ ©2022 VMware, Inc. 13 分布式执行和事务 Ø 火山/流水线模型 Ø QD(query dispatcher)负责下发查询,QE(query executor)负责执行查询 Ø 查询的生命周期: 1) 客户端连接coordinator0 码力 | 23 页 | 4.55 MB | 1 年前3
完全兼容欧拉开源操作系统的 HTAP 数据平台 Greenplum.......................................................................................... 8 全局死锁检测(GDD、Global deadlockdetector) ..................................................................... 团队提出一种全新的全局死锁检测器来减少独占锁的使用,减少独占锁的使用可以极大的提高数据库 在高并发状态下的性能,这项技术已经在 Greenplum6 实现。 在 Greenplum6 和即将发布的 Greenplum 7, 带来了多项产品改进和新增功能,这些功能提升了性能,增加了系统可 用性,提高了系统可维护性,而这些对于传统 OLTP 类型应用提供了强有力的支撑。 全局死锁检测(GDD、Global 处理。Greenplum 创新性的采用了分布式死锁检测,更新删除表的锁级别已降低,支持并发更新删除操作,大大提 升了处理性能。 并发控制优化 Greenplum 6 除了全局死锁检测,还引入了多项其他并发控制优化方法,这些优化对 SELECT 和 INSERT 提升比较 大。一个优化有关 procarray 锁,另一个优化和事务有关,大多数 OLTP 查询带有主键或者分布键,这种查询不需要0 码力 | 17 页 | 2.04 MB | 1 年前3
并行不悖- OLAP 在互联网公司的实践与思考“未来”的数据 —— 趋势分析 4 数据仓库体系架构 业务数据与数据特点 • 现在的数据 —— OLTP Ø实时,在线系统,客户使用 Ø事务小,频率高,并发高 • 过去的数据 —— OLAP Ø非实时(T+1,或小时级),离线系统,分析决策 Ø事务大,频率相对小,并发低 • 未来的数据 —— 趋势分析 Ø非实时,离线+在线流系统,趋势分析 Ø算法分析,持续计算 5 数据仓库体系架构 数据仓库体系架构 OLAP场景举例 • 业务相关场景 Ø用户状态 (注册数,活跃数,并发量,峰值) Ø金币状态 Ø道具/物品状态 Ø对账状态 Ø活动反馈 • 架构相关场景 Ø不同数据量,不同事务特点,不同查询需求 Ø历史数据归档与冷热分离 Ø实时与延时需求的权衡 6 数据仓库体系架构 数据流转过程 • 1 业务数据的产生 —— OLTP • 2 业务数据的中转 —— ETL服务器 • 3 数据的存储和计算 greenplum体系架构 postgresql体系结构 11 greenplum体系架构 postgresql体系结构 • pg结构组成 Ø 连接关系系统 Ø 编译执行系统 Ø 存储执行系统 Ø 事务系统 Ø 系统表 • pg逻辑和物理结构 Ø instance实例 - user - tablesapce Ø database - schema - table,view,function -0 码力 | 43 页 | 9.66 MB | 1 年前3
Greenplum资源管理器portal – SQL结束不一定释放slot – 一个事务用光所有slot 2017 年象行中国(杭州 站)第一期 Resource Queue • System PANIC – 需要睡眠/唤醒机制 – Count + LWLock + Lock • Count:记录并发数 • LWLock:保护count • Lock:睡眠/唤醒,死锁检测,状态报告 – 维护Lock在共享内存的状态 – • Memory – Chaotic – 没有严格资源隔离 – 第三方库的malloc 2017 年象行中国(杭州 站)第一期 Resource Group • SQL语句并发控制 => 事务并发控制 • 基于cost的并发控制 • 基于优先级的CPU控制 => 精确CPU比例 • 内存控制 => 严格资源隔离 2017 年象行中国(杭州 站)第一期 Running Example gp_toolkit.gp_resgroup_status; 2017 年象行中国(杭州 站)第一期 Resource Group • Deadlock – 事务开始时拿slot • Self-deadlock – 事务结束时一定会释放slot • PANIC – Count + LWLock + Latch – Decouple with lock manager 2017 年象行中国(杭州0 码力 | 21 页 | 756.29 KB | 1 年前3
Greenplum备份恢复浅析年象行中国(杭州 站)第一期 gpcrondump具体实现(2/2) gpcrondump实际是对gp_dump的封装,具体步骤如下: 1. 读取参数,检测合理性 2. master执行对pg_class加锁操作 3. 封装并执行gp_dump命令 4. 检测每个segment备份状态 5. 其他操作,例如备份全局对象(角色和表空间)、 备份config文件、清理旧备份集以及VACCUM等 2017 证每个 segment的数据一致性 但是,各个segment的数据设置隔离级别的动作存在时间差, 而master仍然接受新的事务,从而导致各个segment上的数 据不一致。我们可以通过实现barrier机制来避免这种情况: 1. 使数据库只读 2. 等待所有的事务全部提交,开始备份 3. 给pg_class加锁,等待每个segment备份时设置隔离级别 为串行化,恢复数据库为可读可写 并⾏备份恢复优化(3/3)0 码力 | 17 页 | 1.29 MB | 1 年前3
Pivotal Greenplum 最佳实践分享数 • REINDEX:回收索引的垃圾空间 AGE监控和管理 PostgreSQL的MVCC事务语意依赖于比较事务ID(XID)的数值: 一条带有大于当前事务的XID的插入 XID的行版本是―属于未来的‖, 并且不应为当前事务可见。 PostgreSQL使用特殊的 XID(FrozenXID)与普通的XID进行区分。 FrozenXID总是被认为比任何普通 con#sess_id#‖查看是否有进程处于 waiting状态 解决方法: – 如果是被其它回话锁了,需要等待其它回话结束或者Cancel; – 极端的情况下,某些回话虽然终止了,但事务没有正常终止,此时可以用UTILITY模式访问对应的Instance,将 其终止 ex: PGOPTIONS='-c gp_session_role=utility' psql-h segment_host 常用可选参数:-a:直接停止,不提示终端使用者输入确认 -m:只停止master实例,与gpstart –m对应使用 -M fast | -f:停止数据库,中断所有数据库连接,回滚正在运行的事务 -u:不停止数据库,只加载pg_hba.conf 和postgresql.conf 中运行时参数,当改动参数配置时候使用。 -r: 重启数据库 Admin常用命令 查看实例配置和状态0 码力 | 41 页 | 1.42 MB | 1 年前3
Pivotal HVR meetup 20190816异构平台环境下初始化同步 8 • 非侵入式技术对生产没有影响 • 基于日志捕获技术的实时性非常高 • 支持从过去的某一指定时间开始捕获 • 条件过滤 • 支持触发器捕获技术作为补充 基于数据库事务日志的变化数据捕获 9 • 避免人为错误 • 在迁移结束前校验数据 • 支持异构 异构平台间数据校验域修复 10 内置监控与报警 • 实时监控HVR进程 • 自动告警 • 与第三方企业监控平台集成 6还支持z/OS,Google Cloud Storage/Big Query 13 Compare Products 天天拍车是国内领先的二手车竞拍平台,现有核心业务是二手车线上 竞拍。同时,天天拍车还提供上门检测、线上竞拍、包办手续等一站 式二手车交易服务。 天天拍车运用互联网技术,从根本上解决了二手车跨各区域成交和流 通效率低下等问题,持续推进行业升级变革。全国二手车经销商传统 的线下收车方式正在被快速颠覆——二手车经销商通过天天拍车的在0 码力 | 31 页 | 2.19 MB | 1 年前3
共 20 条
- 1
- 2













