Greenplum数据仓库技术架构介绍
- 格式:pptx
- 大小:634.63 KB
- 文档页数:43


1
数据库系统Greenplum研究
目录
1. Greenplum简介 ........................................ 1
2. Greenplum技术特点 .................................... 1
2.1 无共享架构 ....................................... 2
2.2 基础架构MPP ..................................... 3
2.3 Greenplum应用实例 ................................ 5
3. Greenplum同其他数据仓库的对比研究 .................... 6
4. 总结 ................................................. 7
摘 要
Teradata 作为渤海商业银行使用的的数据库仓库系统,为银行查询统计功能提供了稳定和高可用性的服务。作为2014 年重点项目,目前我司的Teradata 版本已经升级到13.1,有效存放数据的容量到到18TB。本文对时下新兴的数据库系统Greenplum 进行探索和研究,并将Greenplum 同其他主流数据库进行技术分析和对比。
2
1. Greenplum 简介
Greenplum 成立于2003 年6 月,总部位于美国的加利福尼亚州,最初由Sun 公司资助,由Teradata 的几位资深工程师合作创建的为全球大型企业用户提供新型企业级数据仓库(EDW)、企业级数据云(EDC)和商务智能(BI)解决方案和咨询服务的公司。2010 年7 月,EMC公司将Greenplum 收购,使得其研发和资本实力大大增强,成为数据
仓库的一名新锐。目前已经在纽约证券交易所、eBay、中信银行、淘
宝、支付宝等具有较大型数据业务的公司中使用。
⼏款分布式数据库的对⽐
1 概述
随着海量数据问题的出现,海量管理能⼒,多类型,变化快,⾼可⽤性,低成本,⾼端可扩展性等需求给企业数据战略带来了巨⼤的挑战。企业数据仓库、数据中⼼的技术选型变得尤其重要!所以在选型之前,有必要对⽬前市场上各种⼤数据量的解决⽅案进⾏分析。2 主流分布式并⾏处理数据库产品介绍
2.1 Greenplum 2.1.1 基础架构
Greenplum 是基于Hadoop 的⼀款分布式数据库产品,在处理海量数据⽅⾯相⽐传统数据库有着较⼤的优势。
Greenplum 整体架构如下图:
数据库由Master Severs 和Segment Severs 通过Interconnect 互联组成。Master 主机负责:建⽴与客户端的连接和管理;SQL 的解析并形成执⾏计划;执⾏计划向Segment 的分发收集Segment 的执⾏结果;Master 不存储业务数据,只存储数据字典。Segment 主机负责:业务数据的存储和存取;⽤户查询SQL 的执⾏。
2.1.2 主要特性
Greenplum 整体有如下技术特点: Shared-nothing 架构
Network Interconnect
...
Master Severs 查询解析、优化、分发
Segment Severs 查询处理、数据存储
External
Sources 数据加载
海量数据库采⽤最易于扩展的Shared-nothing架构,每个节点都有⾃⼰的操作系统、数据库、硬件资源,节点之间通过⽹络来通信。
◆基于gNet Software Interconnect
数据库的内部通信通过基于超级计算的―软件Switch‖内部连接层,基于通⽤的gNet (GigE,10GigE) NICs/switches在节点间传递消息和数据,采⽤⾼扩展协议,⽀持扩展到1000个以上节点。
◆并⾏加载技术
利⽤并⾏数据流引擎,数据加载完全并⾏,加载数据可达到4。5T/⼩时(理想配置)。并且可以直接通过SQL语句对外部表进⾏操作
gpdb原理
GPDB(Greenplum Database)是一个基于PostgreSQL开发,面向大型数据仓库和分析的高度并行化数据库管理系统。GPDB的核心特性是可伸缩性、高性能和可靠性,适用于OLAP场景下的海量数据处理。
从技术架构来看,GPDB的设计思路是将一个大数据仓库拆分成多个子数据集,并将每个数据集分配到不同的计算节点上进行处理。这种方式可以有效地提高数据的并行处理能力和整体性能,同时也可以更好地支持更高的数据容量和更广泛的计算任务。
在GPDB中,每个数据集都被称为“分布式表”,它们由一组相互协作的计算节点组成,每个节点负责处理其中的一部分数据。同时,GPDB还支持数据分区(Partitioning),它可以将每个表的数据按照特定的规则划分到不同的节点上,以进一步提高计算效率。
GPDB的核心是“分布式查询处理器”(QP,Query
Processor),它负责接收用户的SQL查询请求,将其转换为分布式任务并提交到相应的计算节点上进行处理。QP基于PostgreSQL的执行引擎进行扩展,支持分布式查询规划和优化、数据划分和转移等功能。在执行查询时,QP会将查询计划分配给不同的节点,每个节点处理自己分配到的数据,之后将结果返回给QP进行汇总。 GPDB还支持一种称为“MPP”(Massively Parallel
Processing)的并行计算模式,它可以将一个查询拆分成多个子查询,并将每个子查询并发执行于不同的计算节点上。每个节点都可以自主选择并行执行的任务,以提高整个查询的性能和可伸缩性。MPP可以直接对接Hadoop生态,收集Hadoop集群中的数据进行复杂查询。
在GPDB中,数据的安全性和可靠性也得到了高度重视。系统支持数据备份和恢复、事务处理、用户权限管理等功能,以确保数据的完整性和安全性。分布式查询执行引擎还支持许多优化策略,如查询优化、并行查询优化和索引优化等,以进一步提高查询性能和响应速度。
1. Greenplum 分布式数据仓库软件特性介绍
Greenplum数据仓库软件是业界首创将大规模并行计算技术,应用到了数据库软件领域。该类技术同样应用在Google搜索引擎的中。
Greenplum数据仓库软件功能:
Ø 无共享/MPP核心架构
Greenplum数据库软件将数据平均分布到系统的所有节点服务器上,所以节点存储每张表或表分区的部分行,所有数据加载和查询都是自动在各个节点服务器上并行运行,并且该架构支持扩展到上万个节点。
Ø 混合的存储和执行(按列或按行)
Greenplum发明支持混合按列或按行存储数据,每张表或表分区可以由管理员根据应用需要,分别指定存储和压缩方式。基于这个功能,用户可以对任何表或表分区选择按行或按列存储数据和处理方式。这些是在建表或表分区的DDL语句中配置的,只需在建表或表分区时指定。这个功能基于Greenplum的多态维数据存储技术。 Ø 多层次的容错能力
Greenplum 数据仓库软件自己包含多层次容错和冗余能力,这是云计算架构软件的一个重要特征。该功能保证整个数据仓库系统在遇到硬件、软件的故障的情况下,仍然自动继续运行。
Ø 在线系统扩容(永不停机)
在系统中增加节点服务器即可增加存储容量,处理性能和加载性能。当系统扩展时,数据仓库保持在线,并且完全可用,扩展进程在后台运行。增加节点服务器,性能和容量线性增加。
Ø 负载管理(Workload Management)
具有系统资源管控能力,并且可控制给各个查询分配各自系统资源。允许管理员指派资源队列,从而管理数据仓库的队列进入执行情况。在运行的查询的优先级可以随时调整。
Ø PB级的装载能力
基于MPP Scatter/Gather 流技术的高性能并行加载功能。加载速度随着节点线性增加,实际超过4TB/小时。
Ø 灵活的外部数据访问 数据仓库软件可在任意外部数据源上并行运行常规SQL,不论外部数据源的位置,格式或存储介质。