Greenplum Database 管理员指南 6.2.1Greenplum 和相关技术领域,主要工作职责是 售后支持,帮助我们的 Greenplum 用户解决生产需求和技术问题,我们坚持提供最专 业的建议和解决方案,提供最专业的技术支持服务,提供最专业的落地实施支持。 十多年来,参与过的项目不计其数,有 POC 测试,有开发支持,有故障支持,有 长期驻场支持,有临时的功能支持,甚至可能会作为用户看不见的后端支持,总之,我 们的目标是,努力解决用户的一切不违背自然规律的诉求,我们跟随着 .......................................................................................... - 39 - 支持的客户端应用 ............................................................................................ ......................................................................................... - 271 - 支持的操作系统 .............................................................................................0 码力 | 416 页 | 6.08 MB | 1 年前3
Greenplum数据仓库UDW - UCloud中立云计算服务商选择数据分布策略 选择数据分布策略 UDW 表的记录有两种分布策略,分别是哈希分布(DISTRIBUTED BY(key))和随机分布(DISTRIBUTED RANDOMLY)。如果不指定分布策略则默认按primary key或者第⼀个column 做哈希分布。 为了尽可能的并⾏处理数据,需要选择能够最⼤化地将数据均匀分布到所有计算节点的策略,⽐如选择 primary key;分布式处理中将会存在 查询模式固定:例如你经常按照⽇期去查找表格数据、我们可以按照每⽉或者每天做分区;如果你需要按照地区去访问数据,我们可以按照地区去做分区。 数据仓库保留⼀个时间窗⼝的数据:例如您数据仓库需要保留⼀年的数据、如果按⽉做分区、可以通过分区很⽅便的删除最早的⽉份分区、把数据加载到最新的⽉份分区。 把数据分为⼏个均等的部分:通过⼀个分区标准把⼀个⼤表的数据划分为均等的分区,这样可以等倍的提⾼查询性能。 使⽤分区的时 确定分区策略:按照⽇期分区、按照数值分区、按照⼀个列表值分区 选择需要做分区的列 选择创建表格⽅式(heap表 ,append表、按列存储的表) 6.1.1 按照⽇期创建分区表 按照⽇期创建分区表 ⽇期划分的分区表使⽤⼀个⽇期或时间戳列做为分区键值列。可以按天或者按⽉进⾏分析。 您可以通过指定起始值(START),终⽌值(END)和增量⼦句(EVERY)指出分区的增量值,让 UDW 数据仓库0 码力 | 206 页 | 5.35 MB | 1 年前3
Greenplum 分布式数据库内核揭秘具有良好的弹性 和线性拓展能力,内置并行存储、并行通信、并行计算和并行优化功能,兼容 SQL 标准。拥有独 特的高效的 ORCA 优化器,具有强大、高效的 PB 级数据存储、处理和实时分析能力,同时支持 OLTP 型业务的混合负载。 Greenplum 分布式数据库简介 5 Confidential │ ©2021 VMware, Inc. Greenplum 集群化概述 Coordinator/Segment Coordinator 是整个数据库的入口,客户端只会连接 至 Coordinator 节点,并执行相关的查询操作 l Standby 节点为 Coordinator 提供高可用支持 l Mirror 则为 Segment 提供高可用支持 7 Confidential │ ©2021 VMware, Inc. Greenplum 分布式数据存储与多态存储 Hash/Randomly/Replicated ©2021 VMware, Inc. 12 除了支持数据在不同的 segment 节点上水平分布以外,还支持在单个节点按照不同的标准进行分 区,将单个节点上一个逻辑上的大表分割成物理上的几块,且支持多级分区。 Greenplum 目前支持的分区方法有: l 范围分区:根据某个列的时间范围或者数值范围对数据进行分区。譬如以下 SQL 将创建一个按天分区的 分区表,将 2021-01-01 到 2022-01-010 码力 | 31 页 | 3.95 MB | 1 年前3
Greenplum介绍比hadoop好。 单个SQL可以做到秒级 别 集群规模越大,总体性 能越好。 单个SQL最少也有数十 秒。 SQL的支持程度 支持完善,几乎所有 PostgreSQL支持的SQL, gp都支持。 支持有限的SQL,查询 支持子查询,但不支持 窗口函数。大部分dml都 不支持,只支持append。 稳定性 有较多的bug。 比较稳定。 Greenplum架构图 Segment Host 理解GP的数据分布策略 Hash分布:按分布键对数据时行hash分布,这个hash 分布算法没有公布,只有greenplum内部知道数据是如 何hash分布的。 随机分布:数据随机分布在数据库,每次查询都会查询 所有的 segment。 GP的SQL支持程度 基本上绝大多数PostgreSQL支持的SQL,在 greenplum都支持,如常见的建表、建索引的ddl,以及 一般的dml语句。 一般的dml语句。 Greenplum3.X不支持表空间。4.0提供了支持 tablespace功能。 不支持trigger。 建表语句多了distributed by 子名外, 其它的SQL语法 基本上都与PostgreSQL一样: CREATE TABLE products (name varchar(40), prod_id integer, supplier_id integer)0 码力 | 38 页 | 655.38 KB | 1 年前3
Greenplum 6: 混合负载的理想数据平台(compressed) 1. 24 个生产集群 2. 2个选项: 20个节点或 40个节点 3. 600+ 服务器, 13k+ 核, 81PB存储(增长 中) 4. 2.5PB 或 25PB 原始数据 按10x压缩率 1 2 3 4 Greenplum在摩根士丹利 OLTP - Online transaction processing - 联机事务处理 出色的OLTP特性 天生的优势 Use Only 行式存储 表‘SALES’ 表‘SALES’ ■ 更适合OLTP负载 ■ 高效更改和删除 ■ 适合需要全部或者多数列的查询 表 orders 索引 Greenplum支持以下索引: • Btree • Bitmap • Gist • GIN • BRIN (开发中) <10ms的访问 时间,即使是 上亿条记录 <~ 100 不同值 B-Tree Bitmap id = 2; 29 Pivotal Confidential–Internal Use Only 完整的增删改查 表‘SALES’ 表‘SALES’ ■ 读和写不阻塞 ■ 支持更改删除、删除 ■ 支持更改分布键、主键(将数据从一个节点移到另一个节点) 30 Pivotal Confidential–Internal Use Only Greenplum 6:并发改删和分布式死锁检测0 码力 | 52 页 | 4.48 MB | 1 年前3
Pivotal Greenplum 最佳实践分享Greenplum运维常用命令 Greenplum日常检查和故障处理 Greenplum项目经验分享 内核参数 通常情况下,内核参数按照GPDB安装手册配置,如需要增加连接数支持,以下参数需要增大 kernel.shmmax = 1000000000 kernel.sem = 250 512000 100 2048 Redhat 6.2以后,内核增加 class -> relfilenode)将会发生改变。 Vacuum Full的处理性能非常低,一般情况下不建议采用,可以用Reorganize代替、或者使用AO表; 系统表不支持Reorganize操作,因此,需要定期vacuum,例如设置定时作业,每周对所有系统表vacuum analyze一次 • 查询视图GP_TOOLKIT.GP_BLOAT_DIAG可监控垃圾空间的膨胀系数 注:在GP4.3中内置了这个view,在GP4.2中需要执行./share/postgresql/contrib/gp_workfile_mgr.sql 临时空间的监控和管理 GPDB 支持的Join算法主要有: – Hash Join – Nestloop join(非等值关联) – Merge join(排序关联) 大多数关联都是Hash关联,关联是小表被0 码力 | 41 页 | 1.42 MB | 1 年前3
Greenplum 编译安装和调试Greenplum Greenplum 目前官方支持 Redhat/Centos/SuSE/Ubuntu 等Linux系统。大量开发人员包括我自己 使用Mac系统,但是不在官方支持列表中。 1.1 在 Mac 系统上编译 首先需要关闭苹果操作系统的 SIP 特性,否则无法初始化集群。 1. 重启操作系统 2. 重启过程中按下 command+R 进入恢复模式 3. 从 Utilities id) 不同,所以需要数据 重分布。 数据重分布由 Motion 操作符节点处理,它分成2个部分,一部分负责发送数据,一部分负责接收 数据。发送数据者可以根据不同的策略将数据发送给接收方,现在支持的策略有1)重分布( redistribution);2)广播(broadcast)。 最后每个segment执行结束后,将结果发送给 Master。Master 对最终的数据整合(Gather0 码力 | 15 页 | 2.07 MB | 1 年前3
Greenplum 精粹文集Big Date2.indd 1 16-11-22 下午3:38 2 由此,业界认识到对于海量数据需要一种新的计算模式来支持,这种 模式就是可以支持 Scale-out 横向扩展的分布式并行数据计算技术。 当时,开放的X86服务器技术已经能很好的支持商用,借助高速网络(当 时是千兆以太网)组建的 X86 集群在整体上提供的计算能力已大幅高 于传统 SMP 主机,并且成本很低,横向的扩展性还可带来系统良好 Postgresql 就是社区),还可充分利用到社区的源源不 断的创新能力和资源,让产品保持持续旺盛的生命力。 这也是我们在用户选型时,通常建议用户考察一下底层的技术支撑 是不是有好的组织和社区支持的原因,如果缺乏这方面的有力支持 或独自闭门造轮,那就有理由为那个车的前途感到担忧,一个简单 判断的标准就是看看底下那个轮子有多少人使用,有多少人为它贡 献力量。 2) 为什么是 Postgresql Greenplum 精粹文集 5 1) PG 有非常强大 SQL 支持能力和非常丰富的统计函数和统计语法 支持,除对 ANSI SQL 完全支持外,还支持比如分析函数(SQL2003 OLAP window 函数),还可以用多种语言来写存储过程,对于 Madlib、R 的支持也很好。这一点上 MYSQL 就差的很远,很多分 析功能都不支持,而 Greenplum 作为 MPP 数据分析平台,这些功 能都是必不可少的。0 码力 | 64 页 | 2.73 MB | 1 年前3
Greenplum 6新特性:
在线扩容工具GPexpand剖析表分布在多少个节点上 diskkey 分布列的序号 distclass 分布列的操作类 GPExpand简介与具体用法 • GPExpand是Greenplum的扩容工具,可以为集群增加新的节 点来支持更大容量的存储和更高的计算能力。 • 随着Greenplum一起安装发布,在$GPHOME/bin下面,和其 他辅助工具,如gpstart,gpstop,gpactivatestandby一样,是一个 pand的互斥 改进与实现 • 数据重分布的优化 – 扩容后,新节点没有数据,查询Plan如何做??? ▪ 在Greenplum 5和之前的版本里会将所有的表改成随机分布,然后再ALTER成按列 分布 ▪ Greenplum 6里引入了numsegments ▪ Numsegments描述了该表连续分布的segment数量,默认与集群大小一致。对每个 表执行操作时也会按照numsegment值分配Gang0 码力 | 37 页 | 1.12 MB | 1 年前3
Greenplum资源管理器目录:cpu/gpdb/rg1/, cpu/gpdb/rg2/ … – 设置cpu/gpdb/cpu.cfs_quota_us – cpu/gpdb/cpu.shares足够大 – rg1和rg2的cpu.shares按比例配置 – 空闲group配额会被抢占 – 精确控制 2017 年象行中国(杭州 站)第一期 Resource Group • Memory – Not using CGroups – 重构resource0 码力 | 21 页 | 756.29 KB | 1 年前3
共 22 条
- 1
- 2
- 3













