MPP 技术简述,Hadoop 与 MPPDB 的区别

article/2025/9/27 12:51:18

精选30+云产品,助力企业轻松上云!>>> hot3.png

整理 OLAP 引擎的时候,遇到了 MPP ,所以再次总结一下。


1、 什么是MPP?


MPP (Massively Parallel Processing),即大规模并行处理,在数据库非共享集群中,每个节点都有独立的磁盘存储系统和内存系统,业务数据根据数据库模型和应用特点划分到各个节点上,每台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供数据库服务。非共享数据库集群有完全的可伸缩性、高可用、高性能、优秀的性价比、资源共享等优势。


简单来说,MPP是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果(与Hadoop相似)。


2、MPP(大规模并行处理)架构 



fe966d518bd75644b10b954d7c50ca494bd.jpg

 (MPP架构)


3、 MPP架构特征


● 任务并行执行;


● 数据分布式存储(本地化);


● 分布式计算;


● 私有资源;


● 横向扩展;


● Shared Nothing架构。


4、 MPP服务器架构


它由多个SMP服务器通过一定的节点互联网络进行连接,协同工作,完成相同的任务,从用户的角度来看是一个服务器系统。其基本特征是由多个SMP服务器(每个SMP服务器称节点)通过节点互联网络连接而成,每个节点只访问自己的本地资源(内存、存储等),是一种完全无共享(Share Nothing)结构,因而扩展能力最好,理论上其扩展无限制。


5、MPPDB


MPPDB是一款 Shared Nothing 架构的分布式并行结构化数据库集群,具备高性能、高可用、高扩展特性,可以为超大规模数据管理提供高性价比的通用计算平台,并广泛地用于支撑各类数据仓库系统、BI 系统和决策支持系统


6、MPPDB架构


MPP 采用完全并行的MPP + Shared Nothing 的分布式扁平架构,这种架构中的每一个节点(node)都是独立的、自给的、节点之间对等,而且整个系统中不存在单点瓶颈,具有非常强的扩展性。


7、 MPPDB特征


MPP 具备以下技术特征:


1) 低硬件成本:完全使用 x86 架构的 PC Server,不需要昂贵的 Unix 服务器和磁盘阵列;


2) 集群架构与部署:完全并行的 MPP + Shared Nothing 的分布式架构,采用 Non-Master 部署,节点对等的扁平结构;


3) 海量数据分布压缩存储:可处理 PB 级别以上的结构化数据,采用 hash分布、random 存储策略进行数据存储;同时采用先进的压缩算法,减少存储数据所需的空间,可以将所用空间减少 1~20 倍,并相应地提高 I/O 性能;


4) 数据加载高效性:基于策略的数据加载模式,集群整体加载速度可达2TB/h;


5) 高扩展、高可靠:支持集群节点的扩容和缩容,支持全量、增量的备份/恢复;


6) 高可用、易维护:数据通过副本提供冗余保护,自动故障探测和管理,自动同步元数据和业务数据。提供图形化工具,以简化管理员对数据库的管理工作;


7) 高并发:读写不互斥,支持数据的边加载边查询,单个节点并发能力大于 300 用户;


8) 行列混合存储:提供行列混合存储方案,从而提高了列存数据库特殊查询场景的查询响应耗时;


9) 标准化:支持SQL92 标准,支持 C API、ODBC、JDBC、ADO.NET 等接口规范。


8、 常见MPPDB


● GREENPLUM(EMC)


● Asterdata(Teradata)


● Nettezza(IBM)


● Vertica(HP)


● GBase 8a MPP cluster(南大通用)


9、 MPPDB、Hadoop与传统数据库技术对比与适用场景


MPPDB与Hadoop都是将运算分布到节点中独立运算后进行结果合并(分布式计算),但由于依据的理论和采用的技术路线不同而有各自的优缺点和适用范围。两种技术以及传统数据库技术的对比如下:


01a1bf8eeb687dd2d7d8e57d5c0b5b61ffc.png


综合而言,Hadoop和MPP两种技术的特定和适用场景为:


● Hadoop在处理非结构化和半结构化数据上具备优势,尤其适合海量数据批处理等应用要求。


● MPP适合替代现有关系数据机构下的大数据处理,具有较高的效率。


MPP适合多维度数据自助分析、数据集市等;Hadoop适合海量数据存储查询、批量数据ETL、非机构化数据分析(日志分析、文本分析)等。


由上述对比可预见未来大数据存储与处理趋势:MPPDB+Hadoop混搭使用,用MPP处理PB级别的、高质量的结构化数据,同时为应用提供丰富的SQL和事物支持能力;用Hadoop实现半结构化、非结构化数据处理。这样可以同时满足结构化、半结构化和非结构化数据的高效处理需求。




专注大数据技术、架构、实战

关注我,带你不同角度看数据架构


6b9ce6f194c08c37136ae8597f78164788b.jpg

本文分享自微信公众号 - 大数据每日哔哔(bb-bigdata)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。


http://chatgpt.dhexx.cn/article/cdxpsdsB.shtml

相关文章

MPP DB 是 大数据实时分析系统 未来的选择吗?

大数据领域,实时分析系统(在线查询)是最常见的一种场景,前面写了一个《实时分析系统(HIVE/HBASE/IMPALA)浅析》讨论业界当前常见的方案。互联网公司用得比较多是HIVE/HBASE,如腾讯基于HIVE深度定制改造,改名…

MPPDB分布式结构化数据库

1.MPPDB简介 MPP,它是一款 Shared Nothing 架构的分布式并行数据库集群,具备高性能、高可用、高扩展特性,可以为超大规模数据管理提供高性价比的通用计算平台,并广泛地用于支撑各类数据仓库系统、BI 系统和决策支持系统。 2.MPPDB…

mppdbLibra

1:三种数据库架构、特征、应用 数据库架构中shared-nothing等三个之间的优缺点) 1.shared-everything 一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表是SMP技术 2.Shared-Disk&#…

MPPDB集群高可用设计

目录 1. 前言 2. 内核端高可用设计 2.1 GTM高可用 2.2 CN高可用 2.3 DN高可用 2.3.1 主、备、从高可用设计 2.3.2 数据复制 3. 集群管理端高可用设计 3.1 CMserver高可用 3.2 CMagent高可用 1. 前言 MPPDB集群服务组件主要分为内核端和集群管理端,内核端主要包括…

java JButton计算器布局

java JFrame大体框架 this.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //窗体退出关闭程序 this.frame.setVisible(true); //该框架显示 this.frame new JFrame(“簡易計算器”); // 该面板的名字 this.frame.setLocation(100,100); //最初该面板定位 this.frame.…

java jbutton 省略号_JButton显示省略号

我正在尝试使用Swing库在Java中设置GUI。我创建了一个自定义按钮类,它具有自定义初始化程序,使事情变得更容易。它在下面: public class JTButton extends JButton { char type; public JTButton(String title, ActionListener listener, cha…

java jbutton_Java JButton按钮使用

/** *JButton按钮按键 * */ package com.swing; import java.awt.BorderLayout; import javax.swing.JButton; import javax.swing.JFrame; class jbutton extends JFrame{ private JButton btn1,btn2,btn3,btn4,btn5; public static void main(String[] args){ jbutton jbnew …

JButton

JButton():设置一个没有文本图案的按钮 JButton(String text):创建一个带文本的按钮 getContentPane().add(组件) package apiapi;import javax.swing.*;public class api {public static void main(String[] args) {JFrame framenew JFrame();frame.setTitle(&q…

java按钮组件(JButton、JCheckBox)

按钮在Swing中是比较常见的组件,用于触发特定动作,Swing中提供多种按钮组件,如按钮、单选按钮、复选框等,这些按钮都是从AbstractButton类中继承而来的,下面将讲解这些按钮的应用。 1.JButton按钮组件 Swing中的按钮…

JButton部分常用的方法

本篇文章将会教会大家JButton常用的使用方法 JButton是Swing的组件所以需要导入包 import javax.swing.*;1创建JButton //创建JButton JButton jButton new JButton(); //将JButton添加到面板里 jPanel.add(jButton);2设置JButton大小以及坐标 //设置JButton大小 jButton.…

07.JavaSwing(常用基础组件——JButton类)

一、概述 JButton组件是最简单的按钮组件,在按下和释放2个状态之间进行切换,可以通过捕捉按下并释放的动作执行一些操作,从而完成和用户之间的交互。 二、构造函数 JButton();//创建不带有设置文本或图标的按钮。 JButton(Icon icon);//创建…

【CSS】使HTML页面表格中文字水平且垂直居中的方法(易错)

问题出现 因为是td直接写的文字,并不是套了标签才写,水平居中很清楚就是text-aline: center; 但是垂直居中始终没有得到很好地解决,查找了网上的样式是vertical-align: middle; 试了一下没有效果,很苦恼。 解决办法 …

css水平垂直居中方式总结

这里写目录标题 1. text-align: center;文字水平居中;margin: 0 auto;自身水平居中2. 绝对定位margin(元素需要固定宽高)3. 绝对定位 transform: translate(-50%,-50%);4. 绝对定位margin: auto;5.父元素设置display: flex;justify-content: …

CSS水平垂直居中的几种实现方式

水平垂直居中 1.利用 position:absolute2. 利用margin:auto3. 利用弹性盒子4. 利用水平对齐和行高5. 最简便的方法 1.利用 position:absolute <div class"father"><div class"son"></div> </div>当已知元素宽度和高度时&#xff…

div+css实现水平/垂直/水平垂直居中超详解

目录 一、水平居中1.块级元素水平居中方法一:设置margin:0 auto方法二:设置flex布局方法三:设置css3的transform 2.行内元素水平居中行内元素在块级元素中水平居中方法一&#xff1a;将外层块级元素设置为text-align&#xff1a;center方法二&#xff1a;将行内元素设置为块级元…

16种CSS水平垂直居中方法

16种css水平垂直居中方法以及应用&#xff08;文字、图片&#xff09; 一、垂直居中 1、行内元素 基本思想&#xff1a;单行文本子元素line-height 值为父元素 height 值 .parent {height: 200px; }.son {line-height: 200px; }2、块级元素 2.1行内块级元素 基本思想&…

【CSS】CSS实现水平垂直居中

元素水平垂直居中的场景很常见&#xff0c;常用的方法如下&#xff1a; &#xff08;以下方法在chorme测试可行&#xff09; 一、文本垂直居中 <div class"test">这是一段文字</div>.test {width: 200px;height: 200px;background: orange;text-align:…

CSS实现水平垂直居中

方法1&#xff1a;position transform 先设置一个父元素和一个子元素 <div class"father"><div class"child"></div> </div> 给父元素添加相对定位 .father {position: relative; /* 省略部分代码 */ } 给子元素添加绝对定位…

css grid布局实现水平垂直居中 文字水平垂直居中

原来一直使用flex布局来实现水平垂直居中&#xff0c;今天才知道还有grid也是很好用的&#xff0c;参考阮一峰大神的博客&#xff0c;简单记录一下学习&#xff1b; <div class"container"> <div class"item">1</div><…

html css实现文本水平垂直居中显示

这几天在工作中遇到了一个小问题&#xff1a;文本内容怎么能在div里水平垂直居中显示呢&#xff1f;同时群里的小伙伴恰巧也有提问这个问题的&#xff0c;所以我就总结了一下我知道的方法。 一、利用行高(line-height)和vertical-align配合实现 具体做法如下&#xff1a; ht…