Spark查询太慢试试这款MPP数据库吧!.docx
《Spark查询太慢试试这款MPP数据库吧!.docx》由会员分享,可在线阅读,更多相关《Spark查询太慢试试这款MPP数据库吧!.docx(9页珍藏版)》请在第一文库网上搜索。
1、Spark查询太慢?试试这款MPP数据库吧!导读:Greenplum数据库是基于MPP架构的开源大数据平台,具有良好的弹性和线性扩展能力,内置并行存储、并行通信、并行计算和并行优化功能,兼容SQL标准,具有强大、高效的PB级数据存储、处理和实时分析能力,同时支持涵盖OLTP型业务的混合负载,可部署于企业裸机、容器、私有云和公有云中,己为全球金融、电信、制造等行业核心生产系统提供支撑。OlGreenplum数据库架构Greenplum数据库是典型的主从架构,一个Greenplum集群通常由一个Master节点、一个Standby Master节点以及多个Segment实例组成,节点之间通过高速网
2、络互连,如图1所示。Standby Master节点为Master节点提供高可用支持,Mirror Segment实例为Segment实例提供高可用支持。当Master节点出现故障时,数据库管理系统可以快速切换到Standby Master节点继续提供服务。Standby Mast” X 点Master节点图1 Greenplum数据库系统架构图从软件的角度看,Greenplum数据库由Master节点、Segment实例和Interconnect组件三部分组成,各个功能模块在系统中承载不同的角色。Master节点是Greenplum数据库的主节点,也是数据库的入口,主要负责接收用户的SQL请
3、求,将其生成并行查询计划并优化,然后将查询计划分配给所有的Segment实例进行处理,协调集群的各个Segment实例按照查询计划一步一步地并行处理,最后获取Segment实例的计算结果并汇总后返回给客户端。从用户的角度看Greenplum集群,看到的只是Master节点,无须关心集群内部机制,所有的并行处理都是在Master节点控制下自动完成的。Master节点一般只存储系统数据,不存储用户数据。为了提高系统可用性,我们通常会在Greenplum集群的最后一个数据节点上增加一个Standby Master节点。Segment是Greenplum实际存储数据和进行数据读取计算的节点,每个Seg
4、ment都可以视为一个独立的PostgreSQL实例,上面存放着一部分用户数据,同时参与SQL执行工作。Greenplum Datanode通常是指Segment实例所在的主机,用户可以根据Datanode的CPU数、内存大小、网络宽带等来确定其上面的Segment实例个数。官方建议一个Datanode上面部署2 8个Segment实例。Segment实例越多,单个实例上面的数据越少(平均分配的情况下),单个Datanode的资源使用越充分,查询执行速度就越快。Datanode服务器的数量根据集群的数据量来确定,最大可以支持上千台。另外,为了提高数据的安全性,我们有时候会在生产环境中创建Mir
5、ror Segment实例作为备份镜像。Interconnect 是 Master 节点与 Segment 实例、Segment 实例与 Segment 实例之间进行数据传输的组件,它基于千兆交换机或者万兆交换机实现数据在节点之间的高速传输。默认情况下,Interconnect组件使用UDP在集群网络节点之间传输数据,因为UDP无法保证服务质量,所以Interconnect组件在应用层实现了数据包验证功能,从而达到和TCP一样的可靠性。Greenplum执行查询语句的过程如下:当GP Server收到用户发起的查询语句时,会对查询语句进行编译、优化等操作,生成并行执行计划,分发给Segment
6、实例执行Segment实例通过Interconnect组件和Master节点、其他Segment实例交换数据,然后执行查询语句,执行完毕后,会将数据发回给Master节点,最后Master节点汇总返回的数据并将其反馈给查询终端。02Greenplum 的优势首先,与传统数据库相比,Greenplum作为分布式数据库,本身具有高性能优势。对各行各业来说QLTP系统最重要的是在保证ACID事务管理属性的前提下满足业务的并发需求,对于大多数非核心应用场景,MySQL、SQL Server. DB2、Oracle都可以满足系统要求,并且随着MySQL性能的优化和云原生数据库的发展,基于MySQL或者P
7、ostgreSQL商业化的数据库会越来越普及。数据中台的定位是一个OLAP系统,上述数据库就很难满足海量数据并发查询的要求了。上述数据库的横向扩展能力有限,并且软硬件成本高昂,不适合作为OLAP系统的数据库。Greenplum作为一款基于MPP架构的数据库,具有开源、易于扩展、高查询性能的特点,性价比碾压DB2、Oracle. Teradata等传统数据库。其次,Greenplum作为分布式数据库,和同为分布式数据库的Hive相比,优势也非常明显。早期Hadoop的无模式数据已经让开发者饱受痛苦,后面兴起的Hive、Presto. Spark SQL虽然支持简单的SQL ,但是查询性能仍然是分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Spark 查询 试试 MPP 数据库
