MPP表明大规模并行处理,这是网格计算中全部单独节点参与协调计算的方法。 是将任务并行的分散到多个服务器和节点上,在每一个节点上计算完成后,将各自部分的结果汇总在一块儿获得最终的结果。 MPP DBMS是创建在这种方法之上的数据库管理系统。在这些系统中的每一个查询都会被分解为由MPP网格的节点并行执行的一组协调进程,它们的运行时间比传统的SMP RDBMS系统快得多。该架构的另外一个优势是可扩展性,由于能够经过添加新节点扩展网格。为了可以处理大量的数据,这些解决方案中的数据一般在每一个节点只处理其本地数据的方式在节点(分片)之间分割。这是一种彻底无共享(Share Nothing)结构,于是扩展能力最好,理论上其扩展无限制,目前技术上可实现512个节点互联,数千个CPU。MPP有对SQL的完整兼容和一些事务处理功能,若是数据扩展需求不是特别大,数据都是结构化数据,习惯使用传统RDBMS,能够选择MPP数据仓库。数据库
目前有不少关于hadoop技术栈与MPP数据仓库的讨论与对比,不少观点认为hadoop能够替代MPP,可是从下表的比对能够看出二者的差别,对于不一样的场景以及MPP技术的发展,应该仍是处于并存的状态。另外,基于复杂的数据场景下,混合框架的使用,也仍是会存的。咱们团队就使用混合框架构建了数据中心,从而完善OLTP能力。编程
如下是二者的比较:服务器
特性架构 |
Hadoop框架 |
MPP数据仓库编程语言 |
计算节点数oop |
可到数千个人工智能 |
通常1000个之内spa |
数据量视频 |
支持大于10P |
通常不大于10P |
数据类型 |
关系型,半关系型,无结构化,语音,图像,视频 |
关系型 |
时延 |
中/高 |
低(但仍是要看数据量和维度的数量) |
应用生态 |
创新型/人工智能 |
传统数据库型/BI类 |
应用开发接口 |
SQL,MR,丰富的编程语言接口 |
标准数据库SQL |
可扩展性 |
无穷的可能,完整的编程接口 |
有限扩展能力,主要经过UDF支持 |
事务支持 |
有限 |
完整 |
价格 |
低 |
高 |