Greenplum Database 管理员指南 6.2.1V6.2.1 版权所有:Esena(陈淼 +86 18616691889) 编写:陈淼 - 1 - Greenplum Database 管理员指南 版本 V6.2.1 2020 年 09 月 27 日 欢迎关注 Greenplum 官方微信公众号和加入官方社区技术讨论群: ©2020 +86 18616691889) 编写:陈淼 - 2 - 序言 术语约定 GP : Greenplum 数据库 Master : GP 的控制节点/实例 Standby : GP 的备用控制节点/实例 Host(主机) : GP 的一台独立的机器设备 Instance : GP 的计算实例,很多时候也叫 Segment Primary : GP 的发展壮大多做那么一点点贡献,挤出一点时间,重新梳理和打磨这个文档,并完 全根据最新的版本特性进行重新整理,希望能对中文爱好者提供一些帮助,在编写过程 中,仍会参考官方文档,但绝不是简单的翻译,甚至有些内容会与官方文档不一致。 编者提醒,升级版本极其重要,4 版本早该淘汰了,5 版本和 6 版本都带来了极大 的性能和稳定性的提升。 声明 本文档的版权归[陈淼]个人所有,未经许可和授权不得抄袭和引用。0 码力 | 416 页 | 6.08 MB | 1 年前3
完全兼容欧拉开源操作系统的 HTAP 数据平台 Greenplum........................................................................................... 10 并发控制优化 ................................................................................................ ...................................... 13 openEuler 20.03 LTS SP1 & SP2 软件仓库中引入 Greenplum 6.17.0 版本 ............................................................. 13 完全兼容欧拉开源操作系统的 HTAP 数据平台 Greenplum 的软件生态体系,孵化支持多种 处理器架构、覆盖数字设施全场景,推动企业数字基础设施软硬件、应用生态繁荣发展。 openEuler 作为一个操作系统发行版平台,每两年推出一个 LTS 版本。该版本为企业级用户提供一个安全稳定可靠的 操作系统。 openEuler 也是一个技术孵化器。通过每半年发布一次的创新版,快速集成 openEuler 以及其他社区的最新技术成 果,将0 码力 | 17 页 | 2.04 MB | 1 年前3
Greenplum数据仓库UDW - UCloud中立云计算服务商业务分析能⼒。⽀持MADlib扩展,客⼾可以在udw上使⽤MADlib的扩展功能,从⽽让机器学习变得简单,⽀持PostGIS,可以⽅便 的⽀持空间、地理位置应⽤。最新⽀持greeplum6.2.1版本。 云数据仓库产品架构 云数据仓库产品架构 云数据库仓库 UDW 服务的架构图如下所⽰: UDW 采⽤⽆共享的 MPP 架构,适⽤于海量数据的存储和计算。UDW 的架构如上图所⽰,主要有 Client、Master jdbc、odbc、php、python、psql 等⽅式来访问 udw。图形化的 pgAdmin、SQL Workbench/J 等⼯具 1.1 psql 客户端⽅式访问 客户端⽅式访问 下载 psql 客⼾端(或者通过控制台下载 udw 客⼾端) yum install postgresql.i686 (32位系统) yum install postgresql.x86\_64 (64位系统) psql -h hostIP(或域名) Greenplum数据仓库 UDW Copyright © 2012-2021 UCloud 优刻得 131/206 表膨胀 表膨胀 表膨胀的原因 表膨胀的原因 udw的存储实现(MVCC-多版本并发控制)来⾃于Postgres。根据MVCC的原理,没有办法直接更新数据(更新操作(update)是通过先删除(delete)再插⼊(insert)实现的),被更新之前的⾏ 数据仍然在数据⽂件中。0 码力 | 206 页 | 5.35 MB | 1 年前3
Greenplum介绍长的时间。对于Greenplum 3.X的版本,恢复时,需要 把好的节点上的所有数据都copy到坏的机器上。而 Greenplum4.0版本增加了功能,当备份节点坏的时 候,主节点可以把增量数据记下来,这样当备份节点的 主机恢复时,只需要恢复增量数据就可以了。 要让原先已offline的节点再加入集群中,需要重启集 群。 Greenplum中的高可用方案 对于Greenplum 3.X的版本,segment X的版本,segment 的primary与 mirror之间是做的逻辑同步,mirror端的数据库实际上 也是可以读写的。而Greenplum4.0版本后,primary与 mirror实际上是物理同步,这时mirror一直处于恢复状 态,不能读也不能写。 高可用之Master Mirroring 对于Greenplum Master的primary与mirror之间的同步 就是使用PostgreSQL的日志同步方案。master的 server(gpfdist),可 以达到1小时装载2T数据。 GP的工作负载的资源控制 GP提供了对工作负载和资源控制的功能。 在GP可以建一个资源队列(resource queue),然后把 用户加入到这个队列中,然后就可以控制: 1. 所有活动的SQL的cost值最多是多少? 2. 活动的SQL最多是多少个 3. 控制活动的SQL的优先级(4.0的新功能) GP的查询处理 用户提交一0 码力 | 38 页 | 655.38 KB | 1 年前3
Greenplum 6新特性:
在线扩容工具GPexpand剖析其他修改catalog操作时也会申请锁来实现与expand的互斥 改进与实现 • 数据重分布的优化 – 扩容后,新节点没有数据,查询Plan如何做??? ▪ 在Greenplum 5和之前的版本里会将所有的表改成随机分布,然后再ALTER成按列 分布 ▪ Greenplum 6里引入了numsegments ▪ Numsegments描述了该表连续分布的segment数量,默认与集群大小一致。对每个 numsegments的收益 – 不需要将表改成随机分布,单表查询可以做优化 – 对于Join查询,如果分布状态相同的情况下,可以被优化 改进与实现 • 减少重分布数据移动量 – Greenplum 5及之前版本采用取模分布 – 节点数量发生变化后重新计算取模,移动数据量大 – 不仅存在新旧节点间的移动,旧节点之间也要移动 改进与实现 • 减少重分布数据移动量 – Jump Consistent Hash gp_use_legacy_hashops 可以控制,默认是Jump Consistent Hash算法 改进与实现 • 并行度控制 – gpexpand –B – 可以并行初始化每个新节点 – 并行执行expand表 ▪ 对表执行expand之后要更新gpexpand.status_detail表的状态 ▪ Greenplum 5及之前的版本对表的更新操作是串行的,所以大量小表做expand会在0 码力 | 37 页 | 1.12 MB | 1 年前3
Greenplum 精粹文集Startup 公司,创始人家门口有 一棵青梅 ——greenplum,因此而得名)召集了十几位业界大咖(据 说来自 google、yahoo、ibm 和 TD),说干就干,花了一年多的时间 完成最初的版本设计和开发,用软件实现了在开放 X86 平台上的分布 式并行计算,不依赖于任何专有硬件,达到的性能却远远超过传统高 昂的专有系统。 Big Date2.indd 2 16-11-22 下午3:38 带来高效数据更新能力等还有很多方面,Postgresql 似 乎在这些 OLAP 功能上都比 mysql 更甚一筹。 5) Postgresql 许可是仿照 BSD 许可模式的,没有被大公司控制,社区 比较纯洁,版本和路线控制非常好,基于 Postgresql 可让用户拥有 更多自主性。反观 Mysql 的社区现状和众多分支(如 MariaDB), 确实有些混乱。 Big Date2.indd 5 16-11-22 16-11-22 下午3:38 Greenplum 精粹文集 15 2) 功能上的对比 MPP 数据库采用 SQL 作为主要交互式语言,SQL 语言简单易学, 具有很强数据操纵能力和过程语言的流程控制能力,SQL 语言是专 门为统计和数据分析开发的语言,各种功能和函数琳琅满目,SQL 语言不仅适合开发人员,也适用于分析业务人员,大幅简化了数据 的操作和交互过程。 而对 MapReduce 编程明显是困难的,在原生的0 码力 | 64 页 | 2.73 MB | 1 年前3
Pivotal Greenplum 5: 新一代数据平台工作负载的复杂查 询。与旧式 MPP 数据库中常用的传统 RDBMS 查询优化器相比,GPORCA 大幅度地提高了查询性能。 Pivotal Greenplum 5:新一代数据平台 作为重要的新版本,Pivotal Greenplum 5 带来了多项产品改进和新增功能,在管理数据和对数据库中存储的信息应用数据 科学、分析、报告和数据洞察方法方面,这些功能对大多数客户都很有帮助。Greenplum 支持多种云不受限于基础架构的数据平台 Pivotal Greenplum 5 是首个内核百分百基于 Greenplum Database 开源项目及其相关源代码的版本。这意味着,可以通 过 greenplum.org 网站下载和编译的版本以及通过 Pivotal Network 分发的打包版本将具有相同的内核(只有个别微小差 别)。这是两年来致力于与 PostgreSQL 8.3.23 集成的成果,目的在于扩展和融入以 Greenplum Greenplum 为中心的生态系统和社 区。为了更好地贴合 PostgreSQL 社区的模式,他们对代码库进行了重构,这样一来,便可以更轻松地从最新版本(未来 的 PostgreSQL 9.X 和 10)中纳入 PostgreSQL 新增功能。 新一代 数据平台 IT 人员 开发 人员 业务 分析师 数据 科学家 灵活 部署 数据源和数据管道 Spring Cloud Data Flow ETL0 码力 | 9 页 | 690.33 KB | 1 年前3
Greenplum分布式事务和两阶段提交协议实现对A、I、D三个属性的支持 Isolation 隔离性 多个事务并发地执行,对每个事务来说,它并 不会感知系统中有其他事务在同时执行。 多版本并发控制Multi-Version Concurrency Control、 两阶段加锁(Two Phase Locking, 2PL)、乐观并发控制 (OCC) Durability 持久性 一个事务在提交之后,该事务对数据库的改变 是持久的。 Write Ahead Hector Garcia-Molina /Jeffrey D.Ullman/Jennifer Widom《数据库系统实现》 查询编译器/ 优化器 事务管理器 DDL编译器 执行引擎 日志和恢复 并发控制 索引/文件/ 记录管理器 缓冲区管理器 缓冲区 锁表 存储管理器 存储 查询计划 对索引、文件和 记录的请求 页命令 事务命令 查询、更新 用户/ 应用 DDL命令 数据库管理员 恢复成功后,删掉pg_twophase目录下的文件 《数据库系统概念》19.4.1.3节,参与者在响应prepare消息之前记录32 Greenplum实现分布式事务与并发控制 • 分布式事务管理 • 分布式事务的创建、状态迁移等 • QD向QE发起两阶段提交 • 分布式快照 • QD向QE发送全局快照信息 • Writer QE和Reader QE共享本地快照信息 0 码力 | 42 页 | 2.12 MB | 1 年前3
Greenplum机器学习⼯具集和案例● 机器器学习 ● 图形分析 ● 统计分析 MPP系统上的可扩展应⽤用 Apache上的开源项⽬目 ● 发布了了 6 个版本 ● Apache 顶级项⽬目 Pivotal Greenplum PostgreSQL 基于SQL的数据库内置的机器器学习库 2017.thegiac.com 创始于2011年 API (Greenplum, PostgreSQL, HAWQ) 底层抽象层 (数组操作、类型转换、数值计算库等) 数据库内建函 数 ⽤用户接⼝口 ⾼高层抽象层 (迭代控制器器) 内循环函数 (实现机器器学习逻辑) Python SQL C++ MADlib 架构 2017.thegiac.com • 是一种由搜索引擎根据网页之间相互0 码力 | 58 页 | 1.97 MB | 1 年前3
Greenplum 编译安装和调试○ startup.log ○ gpdb-.csv 2.2.3 初始化 master 数据库失败 手动执行initdb查看详细错误信息,然后分析具体错误信息采取相应错误。不同的版本可 能参数不同,可以通过在 gpinitsystem 脚本中找到完整的命令。 $ initdb -E UNICODE -D /data/master/gpseg-1 --locale=en_US QE 的进程号,使用 lldb attach 到该进程,重新执行 SQL 就可以进行调试了。 Gang/QEs 的重用时间由 GUC gp_vmem_idle_resource_timeout 控制。 4.3 使用 IDE 调试 常用的调试器gdb/lldb虽然简单易用、功能也很强大,但是不直观。很多集成开发环境(IDE)提 供了非常直观、强大、易用的调试环境,包括 clion、eclipse、xcode0 码力 | 15 页 | 2.07 MB | 1 年前3
共 20 条
- 1
- 2













