预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Spark查询太慢?试试这款MPP数据库吧!导读:Greenplum数据库是基于MPP架构的开源大数据平台,具有良好的弹性和线性扩展能力,内置并行存储、并行通信、并行计算和并行优化功能,兼容SQL标准,具有强大、高效的PB级数据存储、处理和实时分析能力,同时支持涵盖OLTP型业务的混合负载,可部署于企业裸机、容器、私有云和公有云中,已为全球金融、电信、制造等行业核心生产系统提供支撑。OlGreenplum数据库架构Greenplum数据库是典型的主从架构,一个Greenplum集群通常由一个Master节点、一个StandbyMaster节点以及多个Segment实例组成,节点之间通过高速网络互连,如图1所示。StandbyMaster节点为Master节点提供高可用支持,MirrorSegment实例为Segment实例提供高可用支持。当Master节点出现故障时,数据库管理系统可以快速切换到StandbyMaster节点继续提供服务。Master节点StandbyMaster节点Segmenthost1Segmenthost2Segmenthost3Segmenthost4Segmenthost5图1Greenplum数据库系统架构图从软件的角度看,Greenplum数据库由Master节点、Segment实例和Interconnect组件三局部组成,各个功能模块在系统中承载不同的角色。Master节点是Greenplum数据库的主节点,也是数据库的入口,主要负责接收用户的SQL请求,将其生成并行查询计划并优化,然后将查询计划分配给所有的Segment实例进行处理,协调集群的各个Segment实例按照查询计划一步一步地并行处理,最后获取Segment实例的计算结果并汇总后返回给客户端。从用户的角度看Greenplum集群,看到的只是Master节点,无须关心集群内部机制,所有的并行处理都是在Master节点控制下自动完成的。Master节点一般只存储系统数据,不存储用户数据。为了提高系统可用性,我们通常会在Greenplum集群的最后一个数据节点上增加一个StandbyMaster节点。Segment是Greenplum实际存储数据和进行数据读取计算的节点,每个Segment都可以视为一个独立的PostgreSQL实例,上面存放着一局部用户数据,同时参与SQL执行工作。GreenplumDatanode通常是指Segment实例所在的主机,用户可以根据Datanode的CPU数、内存大小、网络宽带等来确定其上面的Segment实例个数。官方建议一个Datanode上面部署2~8个Segment实例。Segment实例越多,单个实例上面的数据越少(平均分配的情况下),单个Datanode的资源使用越充分,查询执行速度就越快。Datanode服务器的数量根据集群的数据量来确定,最大可以支持上千台。另外,为了提高数据的平安性,我们有时候会在生产环境中创立MirrorSegment实例作为备份镜像。Interconnect是Master节点与Segment实例、Segment实例与Segment实例之间进行数据传输的组件,它基于千兆交换机或者万兆交换机实现数据在节点之间的高速传输。默认情况下,Interconnect组件使用UDP在集群网络节点之间传输数据,因为UDP无法保证服务质量,所以Interconnect组件在应用层实现了数据包验证功能,从而到达和TCP一样的可靠性。Greenplum执行查询语句的过程如下:当GPServer收到用户发起的查询语句时,会对查询语句进行编译、优化等操作,生成并行执行计划,分发给Segment实例执行;Segment实例通过Interconnect组件和Master节点、其他Segment实例交换数据,然后执行查询语句,执行完毕后,会将数据发回给Master节点,最后Master节点汇总返回的数据并将其反应给查询终端。02Greenplum的优势F面将重点介绍Greenplum的优势。首先,与传统数据库相比,Greenplum作为分布式数据库,本身具有高性能优势。对各行各业来说,OLTP系统最重要的是在保证ACID事务管理属性的前提下满足业务的并发需求,对于大多数非核心应用场景,MySQL、SQLServer.DB2、Oracle都可以满足系统要求,并且随着MySQL性能的优化和云原生数据库的发展,基于MySQL或者PostgreSQL商业化的数据库会越来越普及。数据中台的定位是一个OLAP系统,上述数据库就很难满足海量数据并发查询的要求了。上述数据库的横向扩展能力有限,并且软硬件本钱高昂,不适合作为OLAP系统的数据库。Greenplum作为一款基于MPP架构的数据库,具有开源、易于扩展、高