《GreenPlum系列》GreenPlum详细入门教程01-GreenPlum介绍

文章目录

  • 第一章 GreenPlum介绍
    • 1.MPP架构介绍
    • 2.GreenPlum介绍
    • 3.GreenPlum数据库架构
    • 4.GreenPlum数据库优缺点

GreenPlum:https://cn.greenplum.org/

第一章 GreenPlum介绍

1.MPP架构介绍

  MPP是Massively Parallel Processing的缩写,也就是大规模并行处理。MPP架构是一种用于处理大规模数据的计算架构,可以通过将任务分配给多个处理单元并行执行,以提高处理速度和性能。MPP架构的由来可以追溯到对大规模数据处理需求,传统的数据库模式无法满足这些需求。MPP架构允许在大规模数据集上实现水平扩展,通过添加更多的处理单元来增加计算和存储能力。

1) 分布式存储:MPP数据库系统通常使用分布式存储架构,将数据分散存储在多个节点。每个节点都有自己的存储单元,这样可以提高数据的读取和写入速度。

2) 并行处理:MPP架构通过将任务分解为小块,并同时在多个处理单元上执行这些任务来实现并行处理。每个处理单元负责处理数据的一个子集,然后将结果合并以生成最终的输出。

3) 共享无状态架构:MPP系统通过采用共享无状态的架构,即每个节点之间没有共享的状态。这使得系统更容易水平扩展,因为可以简单的添加更多的节点,而不需要共享状态的复杂管理。

4) 负载均衡:MPP数据库通常具有负载平衡的机制,确保任务在各个节点上均匀分布,避免某些节点成为性能瓶颈。

5) 高可用性:为了提高系统的可用性,MPP架构通常设计成具有容错和故障恢复机制。如果一个节点出现故障,系统可以继续运行,而不会丢失数据或中断服务。

  一些知名的MPP数据库系统,比如GreenPlum,Doris, Teradata、Netezza、Vertica等。这些MPP数据库广泛应用于企业数据仓库、商业智能和大数据分析等领域。总体而言,MPP架构通过将任务分布到多个节点并行执行,以及有效的利用分布式存储和处理方式,提高了一种高性能、可伸缩的数据处理解决方案,适用于处理大规模数据的场景。

2.GreenPlum介绍

  GreenPlum数据库是一种大规模并行处理(MPP)数据库服务器,其架构特别针对管理大规模分析型数据仓库以及商业智能工作负载而设计。

  MPP(也被成为shared nothing架构)指有两个或更多处理器协同执行一个操作的系统,每一个处理器都有其自己的内存、操作系统和磁盘。GreenPlum使用这种高性能系统架构来分布数据仓库负载,并且能够使用系统的所有资源并行处理一个查询。

  GreenPlum数据库是基于PostgreSQL开源技术的。它本质上是多个PostgreSQL面向磁盘的数据库实例一起工作形成的一个紧密结合的数据库管理系统(DBMS)。它基于PostgreSQL开发,其SQL支持、特性、配置选项和最终用户功能在大部分情况霞和PostGreSQL非常相似。与GreenPlum数据库交互的数据库用户会感觉在使用一个常规的PostgreSQL DBMS。

  GreenPlum数据库可以使用追加优化(append-optimized,AO)的存储格式来批量装载和读取数据,并且能够提供HEAP表上的性能优势。追加优化的存储为数据保护、压缩和行/列方向提供了校验和。行式或者列式追加优化的表都可以被压缩。

GreenPlum数据库和PostgreSQL的主要区别在于:

  1)在基于Postgres查询规划器的常规查询规划器之外,可以利用GPORCA进行查询规划。

  2)GreenPlum数据库可以使用追加优化的存储。

  3)GreenPlum数据库可以选用列式存储,数据在逻辑上还是组织成一个表,单其中的行和列在物理上是存储在一种面向列的格式中,而不是存储成行。列式存储只能和追加优化表一起使用。列式存储是可压缩的。当用户只需要返回感兴趣的列时,列式存储可以提供更好的性能。所有压缩算法都可以用在行式或者列式存储的表上,但是行程编码(RLE)压缩只能用于列式存储的表。GreenPlum数据库在所有使用列式存储的追加优化表上都提供了压缩。

3.GreenPlum数据库架构

在这里插入图片描述

  GreenPlum数据库是由Master Server、Segment Server和Interconnect三部分组成,Interconnect在Master和Segment之间起到了桥梁的作用。

  GreenPlum是一个关系型数据库,由数个独立的数据服务组成的逻辑数据库,整个集群由多个数据节点(Segment)和控制节点(Master)组成。在典型的Shared-Nothing中,每个节点上所有的资源的CPU、内存、磁盘都是独立的,每个节点都只有全部数据的一部分,也只能使用本节点的数据资源。在GreenPlum中,需要存储的数据在进入到表时,将先进行数据分布的处理工作,将一个表中的数据平均分布到每个节点上,并未每个表指定一个分布列(Distribute Column),之后便根据Hash来分布数据,基于Shared-Nothing的原则,GreenPlum这样处理可以充分发挥每个节点处IO的处理能力。

  1)Master节点:Master是整个系统的控制中心和堆外的服务接入点,它负责接收用户SQL请求,将SQL生成查询计划并进行处理优化,然后将查询计划分配到所有Segment节点并进行处理,协调组织各Segment节点按照查询计划一步一步的进行并行处理,最后获取到Segment的计算结果,再返回给客户端。从用户的角度看GreenPlum集群,看到的只是Master节点,无需关心集群内部的机制,所有的并行处理都是在Master控制下自动完成的。Master节点一般配备一个Standby节点。

  2)Segment节点:Segment是GreenPlum执行并行任务的并行计算节点,它接收Master指令进行MPP并行计算,因此所有Segment节点的计算性能总和就是整个集群的性能,通过增加Segment节点,可以线性化的增加集群处理性能和存储容量,Segment节点可以是1-10000个节点。

  3)InterConnect:InterConnect是Master节点和Segment节点、Segment节点之间进行数据传输的组件,基于千兆交换机或者万兆交换机实现数据在节点之间的高速传输。

  外部数据在加载到Segment时,采用并行数据流进行加载,直接加载到Segment节点,这项独特的技术是GreenPlum的专有技术,保证数据在最短时间内加载到数据库中。

4.GreenPlum数据库优缺点

1)优点

  1.1)数据存储:数据激增,采用MPP架构的数据库系统可以对海量数据进行管理。

  1.2)高并发:拥有强大并行处理能力提供并发支持。

  1.3)线性扩展:线性扩展为数据分析系统的扩展提供技术上的保证,用户可根据实际实施需要进行容量和性能的扩展。

  1.4)高性价比:基于业界开放式硬件平台,在普通的x86 server上就能达到很高的性能,因此性价比很高。

  1.5)处理速度:GreenPlum通过准实时、实时的数据加载方式,实现数据仓库的实时更新,进而实现动态数据仓库。

  1.6)高可用性:对于主节点,GreenPlum提供Master/Standby机制进行主节点容错,当主节点发生错误时,可以切换到Standby节点继续服务。

  1.7)系统易用:GreenPlum产品是基于流行的PostgreSQL之上开发,几乎所有的PostgreSQL客户端工具及PostgreSQL应用都能运行在GreenPlum平台上,在Internet上有丰富的资源支持。

2)缺点

  2.1):主从双层架构,并非真正的扁平架构,存在性能瓶颈和SPOF单点故障。

  2.2):无法支持数据压缩态下的DML操作,不易于数据的维护和更新。

  2.3):单个节点上的数据库没有并行和大内存实用能力,必须通过部署多个实例(segmenr server)来充分利用系统资源,造成使用和部署很复杂。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/604948.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GEE数据集——Cloud Score+ S2_HARMONIZED数据集

简介 Cloud Score 是一种用于中高分辨率光学卫星图像的质量评估(QA)处理器。Cloud Score S2_HARMONIZED数据集是由统一的哨兵-2 L1C数据集制作的,Cloud Score的输出可用于识别相对清晰的像素,并有效去除L1C(大气顶部&…

GPDB - 高可用 - 流复制状态

GPDB - 高可用 - 流复制状态 GPDB的高可用基于流复制,通过FTS进行自动故障切换。自动故障切换需要根据primary-mirror流复制的各种状态进行判断。本节就聊聊primary-mirror流复制的各种状态。同样适用于PgSQL 1、WalSndState typedef enum WalSndState {WALSNDSTATE…

04-微服务-Nacos

Nacos注册中心 国内公司一般都推崇阿里巴巴的技术,比如注册中心,SpringCloudAlibaba也推出了一个名为Nacos的注册中心。 1.1.认识和安装Nacos Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件。相比Eureka功能更加丰富,在…

MySQL-存储引擎

简介:存储引擎是存储数据,建立索引,更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的, (同一个数据库的不同表可以选择不同的存储引擎) 所以存储引擎也可被称为表类型。 我们输入 SHOW CREATE TAB…

Halcon机器视觉和运动控制软件通用框架,24年1月最新版新增UI设计器,插件式开发,开箱即用 仅供学习!

24年1月更新 下载点我 此版本已经添加ui设计器。具体功能如上所示,可以自定义变量,写c#脚本,自定义流程,包含了halcon脚本和封装的算子,可自定义ui,通过插件形式开发很方便拓展自己的功能。 ui设计器

消息队列-RocketMQ-概览与搭建

RocketMQ 领域模型 RockeMQ整体结构预览 RocketMQ 中的一些概念 Topic:主题,可以理解为类别、分类的概念 MessageQueue:消息队列,存储数据的一个容器(队列索引数据),默认每个 Topic 下有 4 个队…

AI担任编程导师:生成式AI如何翻江倒海改变开发世界

生成式 AI 如何重塑开发流程和开发工具? 在21世纪的舞台上,AI作为技术明星,一直以其潜力无穷的表现吸引着我们的目光。而其中,一名角色,响亮的名字叫做生成式AI,正在以翩翩起舞的姿态,改变着我…

华为mstp、vrrp、ospf、isis、bgp等综合一起排错

最终实现左边私网和右边私网全部ping通 SW1 vlan batch 12 34 stp region-configuration //mstp配置 region-name test instance 12 vlan 12 instance 34 vlan 34 active region-configuration interface GigabitEthernet0/0/3 port link-type trunk port trunk allow-pass …

Windows11 - Ubuntu 双系统及 ROS、ROS2 安装

系列文章目录 前言 一、Windows11 - Ubuntu 双系统安装 硬件信息: 设备名称 DESKTOP-B62D6KE 处理器 13th Gen Intel(R) Core(TM) i5-13500H 2.60 GHz 机带 RAM 40.0 GB (39.8 GB 可用) 设备 ID 7673EF86-8370-41D0-8831-84926668C05A 产品 ID 00331-10000-0000…

(低级错误)IDEA/Goland报错连接数据库失败:URL错误和权限问题。

前言 做毕设ing,使用Goland自带的数据库工具连接服务器的数据库。报错 错误: Malformed database URL, failed to parse the main URL sections. (view)服务器是华为云,使用宝塔面板。数据库版本5.6.50。 排查过程 鉴于Goland报错报的狗屁不是&#…

【MySQL】视图,外连接内连接子查询简单介绍及面试笔试案例题

目录 一 视图 1.1视图是什么 1.2 创建视图 1.3 查看视图(两种) 1.4 修改视图(两种) 1.5 删除视图 二 外连接&内连接&子查询介绍 2.1 外连接 2.2 内连接 2.3 子查询 三 外连接&内连接&子查询案例 3.1 了解表结构与数据 3.2 案例题目 四 思维导图…

【算法Hot100系列】合并 K 个升序链表

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

不同像平面坐标系下的Brown畸变系数互转

不同像平面坐标系下Brown畸变系数转换 记 u , v u,v u,v为像素为单位的坐标,f为焦距,单位也是像素。 记 x , y x,y x,y为理想坐标。本文推导两种情况下的Brown畸变系数转换关系: 相同坐标系定义、不同的坐标单位(像素坐标与归一…

RocketMQ源码 事务消息 TransactionalMessage 源码分析

前言 原理:使用普通消息和订单事务无法保证一致的原因,本质上是由于普通消息无法像单机数据库事务一样,具备提交、回滚和统一协调的能力。 而基于 RocketMQ 的分布式事务消息功能,在普通消息基础上,支持二阶段的提交能…

像专家一样使用TypeScript映射类型

掌握TypeScript的映射类型,了解TypeScript内置的实用类型是如何工作的。 您是否使用过Partial、Required、Readonly和Pick实用程序类型? 你知道他们内部是怎么运作的吗? 如果您想彻底掌握它们并创建自己的实用程序类型,那么不要错过本文所涵盖的内容。…

LabVIEW开发自动读取指针式仪表测试系统

LabVIEW开发自动读取指针式仪表测试系统 在工业领域,尤其是煤矿、变电站和集气站等环境中,指针式仪表因其简单的结构、抗干扰能力强以及能适应高温高压等恶劣环境条件而被广泛应用于设备运行状态监视。然而,传统的人工读表方式不仅成本高昂&…

【AIGC工具】我找到了使用大模型问答的最短路径!

大家好,我是豆小匠~ 好久没介绍提高效率的工具啦,这次来介绍一个UTools的骚操作,可以极速打开LLM进行提问! 完成后的效果是: 快捷键调出输入框;2. 输入问题;3. 选择模型;4. 回车提…

IDEA 中搭建 Spring Boot Maven 多模块项目 (父SpringBoot+子Maven)

第1步:新建一个SpringBoot 项目 作为 父工程 [Ref] 新建一个SpringBoot项目 删除无用的 .mvn 目录、 src 目录、 mvnw 及 mvnw.cmd 文件,最终只留 .gitignore 和 pom.xml 第2步:创建 子maven模块 第3步:整理 父 pom 文件 ① …

【VTKExamples::Visualization】第一期 Arbitrary3DCursor

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享Example中Visualization模块中的Arbitrary3DCursor样例,主要解析vtkProbefileter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞关注,小易会…

【Docker基础二】Docker安装Mysql8

下载镜像 安装mysql(版本:8.0.35) # 拉取镜像 docker pull mysql:8.0.35 # 查看镜像是否已经下载 docker images 创建挂载目录 # 宿主机上创建挂载目录 (可以不创建,docker run -v配置了挂载目录,docker会自动…