MPP(⼤规模并⾏处理)详解
⾃我总结:
MPP (Massively Parallel Processing),即⼤规模并⾏处理
MPP是⼀种⾮共享架构,每个节点都有独⽴的操作系统和数据库等,节点之间信息交互只能通过⽹络连接实现。
简单来说,MPP是将任务并⾏的分散到多个服务器和节点上,在每个节点上计算完成后,将各⾃部分的结果汇总在⼀起得到最终的结果(与Hadoop相似)。
Hadoop和MPP两者处理数据的思路是⼀样的, 分布式并⾏处理, 某种程度上也都能完成同样的⼯作。
Hadoop适合处理⾮结构化和半结构化的数据。
MPP适合出来结构化的数据,尤其是复杂的结构化查询(复杂查询经常使⽤多表联查、全表扫描等,牵涉的数据量⼗分庞⼤)
MPPDB是⼀款 Shared Nothing 架构的分布式并⾏结构化数据库集,具备⾼性能、⾼可⽤、⾼扩展特
常见mpp数据库性,可以为超⼤规模数据管理提供⾼性价⽐的通⽤计算平台,并⼴泛地⽤于⽀撑各类数据仓库系统、BI 系统和决策⽀持系统
MPP 的特征:
1)分布式存储,分布式计算,
2)⾮共享数据库集
3) 海量数据分布式存储:可处理 PB 级别以上的结构化数据
4) ⾼扩展、⾼可靠:⽀持集节点的扩容和缩容
4) ⾼并发:单个节点并发能⼒⼤于 300 ⽤户;
7) ⾏列混合存储:提供⾏列混合存储⽅案,从⽽提⾼了列存数据库特殊查询场景的查询响应耗时;
常见MPP数据库:GREENPLUM
未来⼤数据存储与处理趋势:
MPPDB+Hadoop混搭使⽤,⽤MPP处理PB级别的、⾼质量的结构化数据,同时为应⽤提供丰富的SQL和事物⽀持能⼒;⽤Hadoop实现半结构化、⾮结构化数据处理。这样可同时满⾜结构化、半结构化和⾮结构化数据的⾼效处理需
转载:
1、 什么是MPP?
MPP (Massively Parallel Processing),即⼤规模并⾏处理,在数据库⾮共享集中,每个节点都有独⽴的磁盘存储系统和内存系统,业务数据根据数据库模型和应⽤特点划分到各个节点上,每台数据节点通过专⽤⽹络或者商业通⽤⽹络互相连接,彼此协同计算,作为整体提供数据库服务。⾮共享数据库集有完全的可伸缩性、⾼可⽤、⾼性能、优秀的性价⽐、资源共享等优势。
简单来说,MPP是将任务并⾏的分散到多个服务器和节点上,在每个节点上计算完成后,将各⾃部分的结果汇总在⼀起得到最终的结果(与Hadoop相似)。
2、MPP(⼤规模并⾏处理)架构
(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)都是独⽴的、⾃给的、节点之间对等,⽽且整个系统中不存在单点瓶颈,具有⾮常强的扩展性。
MPPDB架构
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都是将运算分布到节点中独⽴运算后进⾏结果合并(分布式计算),但由于依据的理论和采⽤的技术路线不同⽽有各⾃的优缺点和适⽤范围。两种技术以及传统数据库技术的对⽐如下:
特征Hadoop MPPDB传统数据仓库
平台开放性⾼低低
运维负责度⾼中中
扩展能⼒⾼中低
拥有成本低中⾼
系统和数据管理成本⾼中中
应⽤开发维护成本⾼中中
SQL⽀持中(低)⾼⾼
数据规模PB级别部分PB TB级别
计算性能对⾮关系型操作效率⾼对关系型操作效率⾼对关系型操作效率中
数据结构机构化、半结构化和⾮机构化数据结构化数据结构化数据
综合⽽⾔,Hadoop和MPP两种技术的特定和适⽤场景为:
● Hadoop在处理⾮结构化和半结构化数据上具备优势,尤其适合海量数据批处理等应⽤要求。
● MPP适合替代现有关系数据机构下的⼤数据处理,具有较⾼的效率。
MPP适合多维度数据⾃助分析、数据集市等;Hadoop适合海量数据存储查询、批量数据ETL、⾮机构化数据分析(⽇志分析、⽂本分析)等。
由上述对⽐可预见未来⼤数据存储与处理趋势:MPPDB+Hadoop混搭使⽤,⽤MPP处理PB级别的、⾼质量的结构化数据,同时为应⽤提供丰富的SQL和事物⽀持能⼒;⽤Hadoop实现半结构化、⾮结构化数据处理。这样可以同时满⾜结构化、半结构化和⾮结构化数据的⾼效处理需求。
10、 为什么需要MPP数据库?
1)MPP数据库⽀持海量PB级别数据分析,
2)扩展能⼒好,
3)⽀持复杂的结构化查询(这⾥是重点)
复杂查询经常使⽤多表联结、全表扫描等,牵涉的数据量往往⼗分庞⼤;⽀持复杂sql查询和⽀持⼤数据规模;
4)⼤数据分析:
MPP数据库做⼤数据计算或分析平台⾮常适合,例如:数据仓库系统、历史数据管理系统、数据集市等。
有很强的并⾏数据计算能⼒和海量数据存储能⼒,但是他不擅长⾼频的⼩规模数据插⼊、修改、删除,每次事务处理的数据量不⼤。这类数据衡量指标是TPS,适⽤的系统是OLTP数据库。
符合⼏个条件:不需要更新数据,不需要频繁重复离线计算,不需要并发⼤。
有上百亿以上离线数据,不更新,结构化,需要各种复杂分析的sql语句,那就可以选择他。⼏秒、⼏⼗秒⽴即返回你想要的分析结果。例如sum,count,group by,order,好⼏层查询嵌套,在⼏百亿数据⾥分分钟出结果。这类的数据库有,clickhouse,greenplum
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论