大数据从业者一定知道MPP数据库。什么?你还不知道什么是MPP!
在说清楚这个问题之前,我们来聊聊常见的DBMS架构。
数据库的常见架构模式
DBMS的系统架构指定CPU可以直接访问哪些共享资源,它影响着CPU之间的协调方式以及它们在数据库中检索和存储对象的位置,常见的四种架构包括:
-
Shared Everything
单节点DBMS使用的就是所谓的shared everything架构,使用本地内存和存储。
-
Shared Memory
在Shared Memory系统中,多个CPU可以共享内存,同时也共享存储。
-
Shared Disk
在Shared Disk架构中,所有节点都有自己的专用内存,并且都可以通过网络直接读写共享存储。这种架构常见于云原生数据库,将计算层和存储层结构,可以分别扩缩容。
-
Shared Nothing
在Shared Nothing架构中,每个节点都有自己的CPU、内存和磁盘,节点间仅通过网络通信。增加新节点是,DBMS必须将数据物理地移动到新节点,因此在这种架构中增加容量更加困难,灵活性较差。然而,其优点是它可以大规模并行,并优化本地读从而实现不错的性能。
那什么是MPP呢?
传统关系型数据库的技术架构,尤其是 OLTP 数据库在海量数据的存储、查阅以及分析方面出现了明显的性能瓶颈。随着分布式技术的产生和发展,出现了以 Teradata 为代表的基于专有硬件的MPP数据库,以及 Greenplum 和 Vertica 等基于普通服务器的 MPP 数据库。
MPP即大规模并行处理(Massively Parallel Processing),MPP数