Greenplum 分布式数据库内核揭秘
VMware, Inc. Greenplum 分布式数 据库内核揭秘 Greenplum内核开发工程师 2022-03-16 李正龙 Confidential │ ©2021 VMware, Inc. Agenda 2 - Greenplum 分布式数据库简介 - Greenplum 集群化概述 - 分布式数据存储与多态存储 - 分布式查询优化器与执行器 - Greenplum Greenplum 中文社区 3 Confidential │ ©2021 VMware, Inc. Greenplum 分布式数据库简介 Features Confidential │ ©2021 VMware, Inc. 4 Greenplum 是基于 PostgreSQL 所实现的大规模并行处理(MPP)开源数据平台,具有良好的弹性 和线性拓展能力,内置并行存储、并行通信、并行计算和并行优化功能,兼容 容 SQL 标准。拥有独 特的高效的 ORCA 优化器,具有强大、高效的 PB 级数据存储、处理和实时分析能力,同时支持 OLTP 型业务的混合负载。 Greenplum 分布式数据库简介 5 Confidential │ ©2021 VMware, Inc. Greenplum 集群化概述 Coordinator/Segment, Primary/Mirror Confidential0 码力 | 31 页 | 3.95 MB | 1 年前3Greenplum分布式事务和两阶段提交协议
Greenplum中文社区 https://cn.greenplum.org 博文 资料 文档 项目 全新的问答论坛 分布式事务和 两阶段提交协议 6 ● 事务实现原理和Write Ahead Logging(WAL) ● 分布式事务和两阶段提交的原理 ● Greenplum两阶段提交协议的实现 ● Greenplum两阶段提交协议的优化 Outline 7 事务的属性:ACID 事务的属性:ACID 属性 含义 数据库系统的实现 Atomic 原子性 事务中的操作要么全部正确执行,要么完全不 执行。 Write Ahead Logging,分布式事务:两阶段提交协议 Consistency 一致性 数据库系统必须保证事务的执行使得数据库 从一个一致性状态转移到另一个一致性状态。 (满足完整性约束) 实现对A、I、D三个属性的支持 Isolation 隔离性 多个事务并发地执行,对每个事务来说,它并 事务的实现原理和Write Ahead Log(WAL) ● 分布式事务和两阶段提交的原理 ● Greenplum两阶段提交协议的实现 ● Greenplum两阶段提交协议的优化 Outline 22 分布式事务 ● 分布式事务,分布式环境下的事务, 是一个典型的嵌套式事务,一个事务 由多个工作节点的子事务组成。 ● 必须保证参与分布式事务的各个场地 (节点)的事务,要么全部提交,要么 全部rollback,不能出现部分提交的情0 码力 | 42 页 | 2.12 MB | 1 年前3Greenplum Database 管理员指南 6.2.1
..................................................................................... - 19 - 第二章:分布式数据库概念 ............................................................................................. 化服务,用户遇到问题,反馈给专业技术支持人员,或者专业售后服务团队,他们会同 用户一起排查和解决问题,如果有需要,还会保持与研发的持续沟通,虽然以前也是这 种工作模式,但由于时区和语言文化等诸多差异,沟通链路较长,时间较久,研发的本 地化,使得沟通的效率大大提高。 GP 是一个纯软件实现的 MPP 数据库产品,采用 Share-Nothing 架构,可管理和 处理分布在多个不同主机上的大规模数据集。对于 的情况下,通过不同网段间的 Primary 与 Mirror 之间的对应关系也可以达到网络保障的效果,但依然强烈建议采用网卡绑 定的方式实现网络的高可用。建议采用支持 802.3ad 协议的交换机以实现多网口的链 路聚合,这样,在操作系统层面,多个物理网口将聚合并表现为一个 IP 地址,当任何 的网络或者交换机出现故障时,在操作系统级别将不会有任何的连接性异常的感知,只 是网络带宽出现下降,整个数据库集群的 Instance0 码力 | 416 页 | 6.08 MB | 1 年前3Greenplum 精粹文集
SMP(对称多处理)架构难于扩展,并且在 CPU 计算和 IO 吞吐上不 能满足海量数据的计算需求。 分布式存储和分布式计算理论刚刚被提出来,Google 的两篇著名论文 发表后引起业界的关注,一篇是关于 GFS 分布式文件系统,另外一篇 是关于 MapReduce 并行计算框架的理论,分布式计算模式在互联网 行业特别是收索引擎和分词检索等方面获得了巨大成功。 Big Date2.indd 1 16-11-22 下午3:38 2 由此,业界认识到对于海量数据需要一种新的计算模式来支持,这种 模式就是可以支持 Scale-out 横向扩展的分布式并行数据计算技术。 当时,开放的X86服务器技术已经能很好的支持商用,借助高速网络(当 时是千兆以太网)组建的 X86 集群在整体上提供的计算能力已大幅高 于传统 SMP 主机,并且成本很低,横向的扩展性还可带来系统良好 的成长性。 MPP(海量并行处理)计算框架,最终还 是需要软件来实现,Greenplum 正是在这一背景下产生的,借助于分 布式计算思想,Greenplum 实现了基于数据库的分布式数据存储和并 行计算(GoogleMapReduce 实现的是基于文件的分布式数据存储和 计算,我们会在后面比较这两种方法的优劣性)。 话说当年 Greenplum(当时还是一个 Startup 公司,创始人家门口有 一棵青梅 ——0 码力 | 64 页 | 2.73 MB | 1 年前3Greenplum数据仓库UDW - UCloud中立云计算服务商
3800G(SSD) 选择数据仓库类型:Greenplum 是 EMC 开源的数据仓库产品、Udpg 是基于 PostgreSQL 开发的⼤规模并⾏、完全托管的 PB 级数据仓库服务。 选择节点个数:UDW 是分布式架构、所有节点数据都是双机热备,实际可⽤总容量略⼩于节点个数*节点磁盘⼤⼩/2,请根据实际数据⼤⼩选择合适的节点。 3.设置数据仓库信息 必选项有数据仓库名称、DB管理员⽤⼾名、管理员密码。可选项有默认DB 做哈希分布。 为了尽可能的并⾏处理数据,需要选择能够最⼤化地将数据均匀分布到所有计算节点的策略,⽐如选择 primary key;分布式处理中将会存在本地和分布式协作的操作,当不同的表使⽤相 同的分布键的时候,⼤部分的排序、连接关联操作⼯作将会在本地完成,本地操作往往⽐分布式操作快很多,采⽤随机分布的策略⽆法享受到这个优势。 开发指南 Greenplum数据仓库 UDW Copyright © 2012-2021 partitionlevel, partitionrank FROM pg_partitions WHERE tablename='p_store_sales'; 备注: pg_partition:跟踪分区表及其继承关系信息。 pg_partition_templates:创建⼦分区使⽤的⼦分区模版信息。 pg_partition_columns: 分区表分区键值信息。 开发指南 Greenplum数据仓库0 码力 | 206 页 | 5.35 MB | 1 年前3完全兼容欧拉开源操作系统的 HTAP 数据平台 Greenplum
....................................................................................... 8 完善的生态工具链 ................................................................................................... 操作系统支持多设备,应用一次开发覆盖全场景。 openEuler 平台架构 openEuler 是覆盖全场景的创新平台,在引领内核创新,夯实云化基座的基础上,面向计算架构互联总线、存储介质 发展新趋势,创新分布式、实时加速引擎和基础服务,结合边缘、嵌入式领域竞争力探索,打造全场景协同的面向数字 基础设施的开源操作系统。 完全兼容欧拉开源操作系统的 HTAP 数据平台 Greenplum deadlockdetector) 这项技术对性能提升特别是 Update 和 Delete 至关重要。锁是数据库中实现并发控制的重要技术,随之而来的死锁 处理。Greenplum 创新性的采用了分布式死锁检测,更新删除表的锁级别已降低,支持并发更新删除操作,大大提 升了处理性能。 并发控制优化 Greenplum 6 除了全局死锁检测,还引入了多项其他并发控制优化方法,这些优化对0 码力 | 17 页 | 2.04 MB | 1 年前3Greenplum 新一代数据管理和数据分析解决方案
客户关系管理、收 购和盈利率 欺诈检测 欺诈分析 客户流失分析 响应时间 流量分析 产品关联/捆绑 零售 存储运营分析 客户忠诚度计划 协作规划和预估 预防亏损 优化供应链 当今的数据仓库方案 基于硬件 专有,昂贵 不可扩展 针对OLTP进行了优化 主流 10 数据库行业所面临的挑战 0 1 2 3 4 5 6 7 8 9 10 1995 北京第二外语大学:图书分析 • 中信银行:信用卡分析 • 深发展银行:数据中心兼ODS • 李宁公司:销售和库存分析 • 公安部:图像分析 • 国家海洋局:海洋数据采集与分析 • 上海安吉物流:收入&市场分析、客户经理跟踪分析 • 中远集团:收入、发展、销售分析 案例分享(征途游戏) • 现有运行平台 – 服务器平台:SUN X4600一台,4路dual-core CPU 共8core,32GB – 存储平台:NetApp一台0 码力 | 45 页 | 2.07 MB | 1 年前3Greenplum开源MPP数据库介绍
Greenplum的MPP架构 Ø 分布式优化器: Postgres planner 和 ORCA Ø 分布式事务和执行 Ø Greenplum存储 Ø Greenplum生态 Ø Greenplum 7 Confidential │ ©2022 VMware, Inc. 3 Greenplum简介:什么是Greenplum? 基于PostgreSQL、开源、分布式MPP、ACID完备、为OLAP优化的关系型数据仓库。 Confidential │ ©2022 VMware, Inc. 7 执行架构 Interconnect Client Ø Coordinator: q 管理其它节点 q 生成分布式计划 q 下发计划和汇总结果 q 管理分布式事务 Ø Segments: q 存储数据,share-nothing q 产生计算进程 Ø Libpq:控制信道 Ø Interconnect: 数据交换信道 Confidential 数据存两份,Coordinator有standby Ø 自动同步数据 (WAL replication) Ø 自动灾难恢复 (FTS,主备切换) Confidential │ ©2022 VMware, Inc. 9 分布式优化器:OLAP Ø OLTP系统的SQL语句相对简单(CURD) Ø OLAP系统的SQL语句就复杂得多(OLTP则尽量避免) q Join 很复杂(多表, outer join, lateral…)0 码力 | 23 页 | 4.55 MB | 1 年前3Greenplum数据库架构分析及5.x新功能分享
Confidential–Inter nal Use Only GPDB:为大数据存储、计算、挖掘而设计 标准 SQL 数据库:ANSI SQL 2008 标准,OLAP,JDBC/ODBC 支持ACID、分布式事务 分布式数据库:线性扩展,支持上百物理节点 企业级数据库:全球大客户超过 1000+ 安装集群 百万行源代码,超过10年的全球研发投入 开源数据库(greenplum.org),良性生态系统 主节点Segment 系统表 优化器 分布式事务 调度器 执行器 解析器执行词法分 析、语法分析并生 成 解析树 客户端 主节点接受客户连接, 处理请求,执行认证 解析器 主节点 17 Pivotal Confidential–Inter nal Use Only 优化器 本地存储 主节点Segment 系统表 分布式事务 Interconnect 调度器 执行器 实例 本地事务 执行器 系统表 本地存储 18 Pivotal Confidential–Inter nal Use Only 调度器 本地存储 主节点Segment 系统表 分布式事务 Interconnect 执行器 解析器 发送查询计划给各 个Segments 分配处理查询需要 的集群资源,收集 并返回结果给客户 端 主节点 Segment 实例 本地事务0 码力 | 44 页 | 8.35 MB | 1 年前3Greenplum介绍
Greenplum介绍 唐成 - 2011.02.17 汇 报 提 纲 Greenplum VS hadoop Greenplum架构 Greenplum的高可用方案 GP分布式数据库功能介绍 理解GP的查询处理 Greenplum VS hadoop 比较项 Greenplum Hadoop+hive 软件性质 商业软件 开源 式数据库中的 所有元数据,如表结构定义、索引等等。但其并不存储 实际的数据,实际的数据是存储在segment 数据库 的。 master服务器接受从用户发来的连接,并做用户验证, 接收用户发来的sql,生成分布式执行计划,再把分布 执行计划分发到segment上执行,接收segment返回的 数据,最后返回给用户。 Greenplum架构: Segment介绍 Segment是数据的实际存储的地方,也是一个经过改造 Master的primary与mirror之间的同步 就是使用PostgreSQL的日志同步方案。master的 mirror可以在建库时建,也可以在建完greenplum后再 添加。 理解greenplum分布式数据库 理解GP分布式数据库 理解GP的数据分布策略 Hash分布:按分布键对数据时行hash分布,这个hash 分布算法没有公布,只有greenplum内部知道数据是如 何hash分布的。0 码力 | 38 页 | 655.38 KB | 1 年前3
共 17 条
- 1
- 2