参考:https://blog.csdn.net/weixin_33754913/article/details/85830010

1.介绍

  Greenplum的高性能得益于其良好的体系结构。Greenplum的架构采用了MPP(大规模并行处理)。Greenplum是一种基于PostgreSQL的分布式数据库,其采用的Shared-Nothing架构(MPP),主机、操作系统、内存、存储都是自我控制的,不存在共享。

2.基本特性

  • GPDB既支持行存,也支持列存。还为不需更新的数据存储和处理进行了专门的优化。
  • 支持多种压缩方法,包括QuickLZ (商业版本),Zlib,RLE 等。 
  • 支持多级分区表,分区支持多种模式,包括范围,列表等。 
  • 支持B树、bitmap位图和GiST 等索引。
  • 认证机制支持多种方式,包括LDAP和Kerberos等。
  • 扩展语言支持:GPDB 支持使用多种流行语言实现用户自定义函数,包括 Python,R,Java,Perl,C/C++ 等。 
  • 地理信息处理:通过集成PostGIS,GPDB支持对地理信息进行存储和分析。 
  • 内建数据挖掘算法库:通过MADLib(现在是Apache孵化项目)算法库,可以内建几十种常见的数据分析和挖掘算法到GPDB数据库中,包括逻辑回归,决策树,随机森林等。不需要写任何算法代码,通过SQL就可以使用其中的所有算法。 
  • 文本检索:通过GPText扩展,GPDB可以支持高效灵活丰富的全文检索功能。与 MADLib 合用,可以进行并行文本分析和挖掘。

3.Master介绍

  • Master服务器是外面用户访问greenplum的入口。用户都是连接master服务器的,对于外部用户来说,并不与segment host服务器发生任何关系,外部用户的网络只需要与master服务器连通就可以了,不需要访问segment host服务器。 
  • Greenplum数据库是基于PostgreSQL数据库的,所以可以用PostgreSQL数据库的工具来连接Greenplum数据库,如java程序可以使用PostgreSQL的jdbc驱动来访问Greenplum数据库,也可以使用psql工具或pgadminII来管理Greenplum。 
  • Greenplum的Master数据库也是一个被改造过的PostgreSQL数据库,它包含了整个分布式数据库中的所有元数据,如表结构定义、索引,数据分布信息等等。但其并不存储实际的数据,实际的数据是存储在segment 数据库的。 
  • Master节点接收用户发过来的sql命令,然后解析生成分布式的执行计划,再把执行计划下发到对应的segment节点进行执行。Segment节点执行完的结果会发送到master上,master接收到segment的结果进行汇总并返回执行结果给用户。所以在这种master-slave结构中,master不会成为系统的瓶颈。  

4.Segment介绍

  • Greenplum的节点上可以运行多个segment instance,每个instance可以绑定到一个网卡,这样可以发挥cpu和网络性能。
  • 系统的数据都分布式的存储在segment上。 
  • 每个segment同时执行master分发的任务,在执行查询任务或者数据加载的时候可能会涉及数据的移动。在进行数据移动的时候master不参与进来只是segment之间进行。 
  • Segment可以动态扩展,既可以在原有主机上进行增加segment instance的操作,又可以新增主机来增加segment。当扩展segment后,系统里面的数据会进行重分布操作,这个动作消耗时间会比较多。

5.高可用方案

  • Greenplum的高可用性是通过master和segment的镜像来实现的,镜像是基于服务器级别的所以能提供比较好的安全保证。 
  • Master节点不能和segment节点安装在同一个主机上,standby节点可以和segment节点复用。 
  • Master宕机的话standby master不会自动切换到master,需要手动切换到主设备。Segment如果一个节点坏掉,系统可以自动将mirror切换到primary。 
  • 当segment中某台设备出现故障后,mirror会切换成primary。检查出故障的主机恢复后可以使用gprecoverseg命令恢复成之前的主备关系。

6.GreenPlum与PostgreSQL的区别

  • GreenPlum采用分布式架构,为了实现各个几点并行计算能力,需要在节点间进行广播或者数据重分布,对整体的性能有一定影响,当数据量较小时,计算量小,广播或者重分布耗时占总耗时比例大,影响整体的执行效率,可能会出现GreenPlum不如单机版PostgreSQL效率高。
  • 单批量插入慢的原因,因为是分布式,每条数据进来根据分布键需要存放到不同的Segment上,插入性能不是瓶颈,而是两台服务器数据交互

Greenplum(一) 基本特性 Master Segment相关推荐

  1. 31号2场直播预告丨下一代分布式数据库设计思考、Greenplum 7新特性和进展

    1.下一代分布式数据库设计思考-03.31 自从 E.F.Codd 于 1970 年提出关系模型,到今天为止,关系数据库已经有 50 多年的发展历史.通过抽象出关系模型和事务模型,以及 SQL 语言, ...

  2. 【实战经验】Greenplum集群Master與Segment节点故障检测与恢复

    了解更多Greenplum相关内容,欢迎访问Greenplum中文社区网站 Greenplum集群主要包括Master节点和Segment节点,Master节点称之为主节点,Segment节点称之为数 ...

  3. Greenplum删除segment节点

    1 备份数据库 [gpadmin@hadoop02 ~]$ gp_dump --gp-d=/home/gpadmin/backup tutorial 20160928:14:41:34|gp_dump ...

  4. Greenplum实战--standby master的模拟故障与修复

    standby master的模拟故障与修复 本文档主要演示GreenPlum数据库的Master节点的Standby在异常后的数据同步及Master节点故障后,Standby的切换.在操作前通过gp ...

  5. Greenplum集群Master与Standby相互切换

    Greenplum集群Master与Standby相互切换 1 概述 1 2 查看集群的基本信息 2 2.1 查看集群的配置信息 2 2.2 快速查看down segments节点 2 2.3 查看M ...

  6. 故障分析 | Greenplum Segment 故障处理

    作者:杨文 DBA,负责客户项目的需求与维护,会点数据库,不限于MySQL.Redis.Cassandra.GreenPlum.ClickHouse.Elastic.TDSQL等等. 本文来源:原创投 ...

  7. 《Greenplum企业应用实战》一2.3 畅游Greenplum

    本节书摘来自华章出版社<Greenplum企业应用实战>一书中的第2章,第2.3节,作者 何勇 陈晓峰,更多章节内容可以访问云栖社区"华章计算机"公众号查看 2.3 畅 ...

  8. 盘点 Greenplum 数据库的十大特点

    导读:本文简单介绍Greenplum具备的特性. 作者:王春波 来源:大数据DT(ID:hzdashuju) 01 开放源代码 Greenplum数据库于2015年由Pivotal公司开源,遵循Apa ...

  9. GreenPlum小结

    什么是GreenPlum? GreenPlum是业界最快最高性价比的关系型分布式数据库,它在开源的PostgreSQL的基础上采用MPP架构(Massive Parallel Processing,海 ...

最新文章

  1. 网页布局(div布局)
  2. python基础知识资料-Python基础知识梳理 - 第02部分
  3. 面向对象的程序设计之原型模式
  4. 西奥妮·帕帕斯《天天数学》
  5. winexec函数 执行powershell 脚本_丢掉 Powershell.exe 来渗透测试
  6. 运维工程师必会的109个Linux命令(1)
  7. 开启Hadoop/Yarn的日志监控功能,配置Spark历史服务,解决web端查看日志时的Java.lang.Exception:Unknown container问题
  8. 金典 SQL笔记(2)
  9. arXiv 上传文章过程
  10. matlab,python 写kml文件(点,线,多边形)
  11. (池州市地图)行政区划图高清矢量cdr|pdf(详细版2021年)
  12. Linux udhcpc/udhcpd 移植
  13. 混合线性模型笔记1:模型假定
  14. 软件工程 -- 数据流图的画法
  15. 闪迪U盘插入电脑后,系统能识别到插入,但在我的电脑中没有显示的解决方法
  16. 2006年网络名言100句(转)
  17. 基于Simulink模型的嵌入式代码生成与实际工程应用
  18. 多目标灰太狼算法求解环境经济调度问题(IEEE30)(Matlab实现)
  19. PgMP: Program Management Professional Exam Study Guide
  20. socket传输案例

热门文章

  1. 4.2uboot对设备树的支持——dtb的修改原理
  2. c语言字节高低位转换,协议中遇到字节高低位转换的问题如何实现
  3. 【C++】C++11新特性——可变参数模板|function|bind
  4. 解构协鑫:多晶硅帝国的裂变
  5. 如何删除 AppStore 中的恶意评论 iOS
  6. PowerMill C#插件二次开发 截图处理
  7. 云端总成更智能|助力APP开发有如神-逐浪CMSv8.6.1发布
  8. 车载联网终端Tbox基本功能介绍
  9. Django 多方式实现跨域访问
  10. 如何在米拓的metinfo的模板中加入自己定义的样式