海量数据处理利器greenplum——初识

简介: 简介及适用场景 如果想在数据仓库中快速查询结果,可以使用greenplum。 Greenplum数据库也简称GPDB。它拥有丰富的特性: 第一,完善的标准支持:GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展;从应用编程接口上讲,它支持ODBC和JDBC。

简介及适用场景

如果想在数据仓库中快速查询结果,可以使用greenplum。

Greenplum数据库也简称GPDB。它拥有丰富的特性:

第一,完善的标准支持:GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展;从应用编程接口上讲,它支持ODBC和JDBC。完善的标准支持使得系统开发、维护和管理都大为方便。而现在的 NoSQL,NewSQL和Hadoop 对 SQL 的支持都不完善,不同的系统需要单独开发和管理,且移植性不好。

第二,支持分布式事务,支持ACID。保证数据的强一致性。

第三,做为分布式数据库,拥有良好的线性扩展能力。在国内外用户生产环境中,具有上百个物理节点的GPDB集群都有很多案例。

第四,GPDB是企业级数据库产品,全球有上千个集群在不同客户的生产环境运行。这些集群为全球很多大的金融、政府、物流、零售等公司的关键业务提供服务。

第五,GPDB是Greenplum(现在的Pivotal)公司十多年研发投入的结果。GPDB基于PostgreSQL 8.2,PostgreSQL 8.2有大约80万行源代码,而GPDB现在有130万行源码。相比PostgreSQL 8.2,增加了约50万行的源代码。

第六,Greenplum有很多合作伙伴,GPDB有完善的生态系统,可以与很多企业级产品集成,譬如SAS,Cognos,Informatic,Tableau等;也可以很多种开源软件集成,譬如Pentaho,Talend 等。

greenplum起源

Greenplum最早是在10多年前(大约在2002年)出现的,基本上和Hadoop是同一时期(Hadoop 约是2004年前后,早期的Nutch可追溯到2002年)。当时的背景是:

  • 互联网行业经过之前近10年的由慢到快的发展,累积了大量信息和数据,数据在爆发式增长,这些海量数据急需新的计算方式,需要一场计算方式的革命;
  • 传统的主机计算模式在海量数据面前,除了造价昂贵外,在技术上也难于满足数据计算性能指标,传统主机的Scale-up模式遇到了瓶颈,SMP(对称多处理)架构难于扩展,并且在CPU计算和IO吞吐上不能满足海量数据的计算需求;
  • 分布式存储和分布式计算理论刚刚被提出来,Google的两篇著名论文发表后引起业界的关注,一篇是关于GFS分布式文件系统,另外一篇是关于MapReduce 并行计算框架的理论,分布式计算模式在互联网行业特别是收索引擎和分词检索等方面获得了巨大成功。

下图就是GFS的架构

image

总体架构

greenplum的总体架构如下:

image

  数据库由Master Severs和Segment Severs通过Interconnect互联组成。

Master主机负责:建立与客户端的连接和管理;SQL的解析并形成执行计划;执行计划向Segment的分发收集Segment的执行结果;Master不存储业务数据,只存储数据字典。 

Segment主机负责:业务数据的存储和存取;用户查询SQL的执行。

  greenplum使用mpp架构。

image

    基本体系架构

image

master节点,可以做成高可用的架构

image

master node高可用,类似于hadoop的namenode和second namenode,实现主备的高可用。

image

segments节点

image

并行管理

对于数据的装载和性能监控。

image

并行备份和恢复。

image

数据访问流程,数据分布到不同颜色的节点上

image

查询流程分为查询创建和查询分发,计算后将结果返回。

image

对于存储,将存储的内容分布到各个结点上。

image

对于数据的分布,分为hash分布和随机分布两种。

image

均匀分布的情况:

image

总结

GPDB从开始设计的时候就被定义成数据仓库,如果是olap的应用,可以尝试使用GPDB。

目录
相关文章
|
存储 SQL NoSQL
当流计算邂逅数据湖:Paimon 的前生今世
当流计算邂逅数据湖:Paimon 的前生今世
346 0
|
SQL 机器学习/深度学习 人工智能
私藏!资深数据专家SQL效率优化技巧 ⛵
同一个数据分析的需求,不同人的SQL代码效率上会差别很大!本文给大家梳理集中效率优化方法,这也是数据岗面试的高频问题哦!快学起来~
820 2
私藏!资深数据专家SQL效率优化技巧 ⛵
|
SQL 数据可视化 数据挖掘
数据分析大作战,SQL V.S. Python,来看看这些考题你都会吗 ⛵
SQL与Pandas都可以完成大部分数据分析需求。本文用SQL与Pands逐一实现10类核心数据分析需求,轻松进行对比学习:数据选择、限制、统计计数、排序、新字段生成、数据选择、数据分组、统计均值、方差、极差/范围。
2105 1
数据分析大作战,SQL V.S. Python,来看看这些考题你都会吗 ⛵
|
SQL 人工智能 数据挖掘
看看你离世界一流大厂有多远?3道Google最新SQL面试题 ⛵
朋友刚刚拿到了 Google 数据分析师的 Offer!跟她详聊了面试的3道SQL题目,把思路和参考答案一并奉上!各位近期在面试的朋友,可以拿来自测一下~【代码与数据集亲测可运行】
2365 1
看看你离世界一流大厂有多远?3道Google最新SQL面试题 ⛵
|
存储 SQL NoSQL
开源SPL强化MangoDB计算
开源SPL强化MangoDB计算
|
SQL 存储 资源调度
一幅长文细学华为MRS大数据开发(三)—— HIVE
Apache Hive数据仓库软件有助于使用SQL读取,写入和管理驻留在分布式存储中的大型数据集。可以将结构投影到已经存储的数据上。提供了命令行工具和JDBC驱动程序以将用户连接到Hive上。
693 0
|
存储 缓存 负载均衡
一幅长文细学华为MRS大数据开发(四)—— HBase
HBase是一种非关系型数据库,它是基于谷歌BigTable的开源实现,和BigTable一样,支持大规模海量数据的存储,对于分布式并发数据处理的效率极高,易于扩展且支持动态伸缩,适用于廉价设备。HBase实际上就是一个稀疏、多维、持久化的映射表,它采用行键、列和时间戳即可轻松锁定数据,每个数据都是未经解释的字符串,在本文中我们都会具体学习。
484 0
|
SQL 存储 关系型数据库
关于数据导入,教你几招
我们知道,数据库是存放数据的仓库。日常我们使用数据库也是为了存储数据,和数据库打交道总免不了要进行数据导入工作。工作中也可能遇到各种不同的数据导入需求,本篇文章主要分享下数据导入相关的小技巧,希望你能学到几招。
381 0
关于数据导入,教你几招
|
Linux C语言
揭秘 BPF map 前生今世
揭秘 BPF map 前生今世
290 0