Greenplum主要组件包括:Master、Segments、Interconnect;其他组件包括ETL Server、Greenplum command center等。

0. 组件之-Master:
master功能
master也是一个gp的独立的数据库,是gp的入口,负责接受和管理客户端的连接请求,并处理用户SQL语句语句,可以通过psql或者odbc等连接工具来连接pg数据库。包含了一个称作system catalog的自描述的信息内容,类似于oracle的数据字典,但是不包含任何用户数据,master节点验证客户端的连接、处理用户提交的SQL语句、在seg节点之间调节工作负载、整合从各个seg节点执行后返回的数据结果并返回给用户。

master redundancy
如上所述master承担着重要的功能,因此有必要对它做冗余,可以采用独立主机也可以采用其中的某个seg节点来搭建standby master,standby处于热备状态,通过日志传输进程transaction log replication来见master的system catalog变化信息复制传输应用到standby master上,如果master节点失败,那么日志传输进程将停止,这个时候可以激活standby master变成master,当master恢复之后,日志传输进程将自动同步system catalog内容回去到master

1. 组件之-Segments
segments功能
seg是gp系统中实际承担数据存储和存取的节点,每个seg节点只存储表或者索引的部分数据,SQL语句并不是在master节点上执行,而是在seg节点上执行并生成结果的,但是用户并不会直接接触到seg节点,这一过程是由master来协调完成的。根据主机cpu的配置情况,通过测试来获得每个seg主机最佳的seg实例数量。

segments redundancy
seg也可以配置冗余,seg的冗余不能配置在本主机上,当seg失败的时候,冗余节点将承担起相应的功能角色。
只要失败的seg节点的冗余节点还存活,gp就可以继续在线运行,当master无法连接到seg的时候,它会将seg节点在数据字典中标记为不可用并从系统中剔除,并在处理失败的seg并重新启动之后,自动在线恢复,恢复的数据仅仅包含从失败之后的内容。如果没有配置冗余的seg,当某个seg失败的时候整个gp将崩溃失败并关闭,这个情况下需要修复失败的seg节点之后重新启动gp。

2. 组件之-Interconnect
是gp的网络层,通常使用千兆网络连接,在各个节点直接通信和传输信息;默认情况下使用UDP协议传输;可以配置冗余实现高可用性。

3. 组件之ETL Server
常规的txt和csv文件可以通过gpfdist这程序来作为文件服务程序,以便gp连接这些外部文件创建外部表并导入到数据库。

4. 组件之Greenplum command center
通过在每个seg上部署agent来监控整个系统情况,可以给予命令行查询和web界面展示方式查看系统情况。

疑问:
master和segs的判断fail机制是什么?
redundancy判断fail机制是什么?失败恢复之后,standby的角色是否会变回去?
seg判断fail机制是什么?数据传输复制机制?角色是否转变?
gp的性能受限于性能最差的seg节点吗?

interconnect网卡冗余配置最佳实践是什么?多个实例和多个网卡的配置情况?

master的redundancy之间、seg的redundancy之间以及master和seg之间的平台异构?

-EOF-

摘自http://blog.csdn.net/gtlions/article/details/8752200

Greenplum-概念篇的更多相关文章

  1. 【转】android 电容屏(二):驱动调试之基本概念篇

    关键词:android  电容屏 tp 工作队列 中断 多点触摸协议平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsung ...

  2. 我的TDD实践---TDD概念篇

    “我的TDD实践”系列之TDD概念篇 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精 ...

  3. DNA拷贝数变异CNV检测——基础概念篇

    DNA拷贝数变异CNV检测——基础概念篇   一.CNV 简介 拷贝数异常(copy number variations, CNVs)是属于基因组结构变异(structural variation), ...

  4. 【黑金原创教程】 FPGA那些事儿《概念篇》

    简介一本讲述非软硬片上系统的书,另外还是低级建模的使用手册. 目录[黑金原创教程] FPGA那些事儿<概念篇>:File01 - 结构的玩笑[黑金原创教程] FPGA那些事儿<概念篇 ...

  5. 常见面试题整理--Python概念篇

    希望此文可以长期更新并作为一篇Python的面试宝典.每一道题目都附有详细解答,以及更加详细的回答链接.此篇是概念篇,下一篇会更新面试题代码篇. (一).这两个参数是什么意思:*args,**kwar ...

  6. Linux Capabilities 入门教程:概念篇

    原文链接:Linux Capabilities 入门教程:概念篇 Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限.root 用户拥有 ...

  7. 【转帖】H5 手机 App 开发入门:概念篇

    H5 手机 App 开发入门:概念篇 http://www.ruanyifeng.com/blog/2019/12/hybrid-app-concepts.html 作者: 阮一峰 日期: 2019年 ...

  8. 鸿蒙内核源码分析(文件概念篇) | 为什么说一切皆是文件 | 百篇博客分析OpenHarmony源码 | v62.01

    百篇博客系列篇.本篇为: v62.xx 鸿蒙内核源码分析(文件概念篇) | 为什么说一切皆是文件 | 51.c.h.o 本篇开始说文件系统,它是内核五大模块之一,甚至有Linux的设计哲学是" ...

  9. 鸿蒙内核源码分析(中断概念篇) | 海公公的日常工作 | 百篇博客分析OpenHarmony源码 | v43.02

    百篇博客系列篇.本篇为: v43.xx 鸿蒙内核源码分析(中断概念篇) | 海公公的日常工作 | 51.c.h .o 硬件架构相关篇为: v22.xx 鸿蒙内核源码分析(汇编基础篇) | CPU在哪里 ...

  10. 鸿蒙内核源码分析(进程概念篇) | 进程在管理哪些资源 | 百篇博客分析OpenHarmony源码 | v24.01

    百篇博客系列篇.本篇为: v24.xx 鸿蒙内核源码分析(进程概念篇) | 进程在管理哪些资源 | 51.c.h .o 进程管理相关篇为: v02.xx 鸿蒙内核源码分析(进程管理篇) | 谁在管理内 ...

随机推荐

  1. 由Photoshop高反差保留算法原理联想到的一些图像增强算法。

    关于高反差保留的用处说明呢,从百度里复制了一段文字,我觉得写得蛮好的: 高反差保留就是保留图像的高反差部分,再说得真白些,就是保留图像上像素与周围反差比较大的部分,其它的部分都变为灰色.拿一个人物照片 ...

  2. 为什么 C++ 中成员函数指针是 16 字节?

    当我们讨论指针时,通常假设它是一种可以用 void * 指针来表示的东西,在 x86_64 平台下是 8 个字节大小.例如,下面是来自 维基百科中关于 x86_64 的文章 的摘录: Pushes a ...

  3. Lis日常维护

    1.[问题]护士站打印LIs条码,出来是PDF格式的 [解决]在文件夹Client\NeusoftLis\Xml\Print.xml中把BarcodePrint Name的值改成安装的斑马打印机名(不 ...

  4. 数组,集合分割函数,join()

    join函数定义如下: // 串联类型为 System.String 的 System.Collections.Generic.IEnumerable<T> 构造集合的成员,其中在每个成员 ...

  5. [译]RxJS 5.X基础篇

    欢迎指错与讨论 : ) 当前RxJS版本:5.0.0-beta.10.更详细的内容尽在RxJS官网http://reactivex.io/rxjs/manual/overview.html.文章比较长 ...

  6. [LeetCode] Island Perimeter 岛屿周长

    You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represen ...

  7. 重度使用示波器进行优化分析——一个DSDA项目回顾

    这是若干年前一个项目,最近有时间整理一下.回忆起来,印象最深刻的就是重度使用示波器辅助分析,进行优化. 项目背景是在原有项目3G+项目基础上,增加一颗2G+ Modem,使支持DSDA功能. 在介绍D ...

  8. logback 常用配置详解<appender>

    logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...

  9. .Net Core Linux centos7行—发布程序到生产环境

    实验demo现在需要发布到生产环境,发现在发布的时候要考虑到不一致的几个地方. 1.各类配置文件线下,线上不一致. 2.绑定的url不一致,可能是域名不一致,也可能是schema不一致(http,ht ...

  10. Python学习--Python简介

    Python 简介 Python是一种解释型.编译性.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. P ...