GreenPlumn 数据库是基于 PostgreSQL 基础上开发,具有巨大的并行处理能力的数据仓库,MPP( massively parallel processing )是 GreenPlumn的主要特性, MPP是指服务器上拥有两个或者以上的处理节点,并且多个处理节点可以并行,协同的工作来完成一个计算, 这些处理节点拥有独自的内存,操作系统和硬盘, 处理节点可以理解成为一台物理主机。GreenPlumn 会分发 TB 及以上的数据到所有的子节点,并且当在GreenPlumn上执行查询时,所有的子节点能够利用各自的资源来并发地执行这个查询。

        GreenPlumn 实际上是由一组 PostgreSQL 数据库组合而成的强大数据仓库, GreenPlumn 基于PostgreSQL 8.2.14 开发, 并且在多数据情况下和 PostgreSQL 非常相似,以至于用户可以像是在使用PostgreSQL 一样来使用GreenPlumn。

2 GreenPlumn 体系结构

greenplum与mysql整合 greenplum数据库架构_数据

--2.1 GreenPlumn 的 Master 节点

        Master 节点仅存储 GreenPlumn的系统数据,而不存储用户数据,相反,用户数据存在所有的Segments 节点上,Master 负责以下工作:处理客户端的连接请求,处理客户端发出的SQL命令,将SQL命令分发到所有Segments 节点,协调所有节点处理的结果数据,并将这些数据展现给终端用户。    

--2.2 GreenPlumn 的 Segment 节点   在GreenPlumn中, Segments存诸用户的数据,并且负责处理Master 分发出的SQL请求任务,用户定义的表和索引按一定算法分发到所有的 segments节点,每个节点含有独立的一部分数据,用户不需要直接和 segments 交互,相反,只需通过和 Master 节点交互。 一般地,建议一个CPU上跑一个活跃的 segments。

3 GreenPlumn的镜像备份功能--3.1 关于 Segments节点的镜像    搭建GreenPlumn时,为了保证系统的高可用性,可以给每个 Segment 搭建 Mirror Segment, 当Primary Segment 不可用时, Mirror Segment可以fail over 接替工作。Mirror Segment(镜像节点)通常和Primary Segment 分布在不同的主机上。
--3.2 关于 Master 节点的镜像

   由于 Master 不存储用户数据,所以Master Standby 只需要同步 Master 系统表数据,这些数据不会非常频繁地改变,当 Master 节点数据变化时,这些变化会自动地应用到 Master Standby节点上。从而使得 Master Standby 数据 始终和 Master 保持一致。

greenplum与mysql整合 greenplum数据库架构_PostgreSQL_02