YupDB 2.0 底层架构全面升级
YupDB将借鉴 Shared Nothing 架构(MPP)的思想,对底层架构进行全面升级,从而提高复杂查询的处理能力,更加适合海量数据处理。
MPP
数据库架构设计中,主要有Shared Everything,Shared Disk,Shared Nothing。
- Shared Everything – 针对单个主机,完全透明共享硬件资源,并行处理能里姣差,典型的代表SQLServer。
- Shared Disk – 处理单元使用私有CPU和内存,共享磁盘系统,类似于SMP(对称多处理)模式
- Shared Nothing (MPP)-- 处理单元使用私有硬件,节点间通过应用协议通信。
相对1、2两点,3的优势非常明显,多个处理单元计算相对独立,互不影响、可伸缩性,并发处理能力等。当前流行的 Greenplum,Vertica等都采用类似的解决方案。
YupDB 新版架构
- 将硬件资源进行逻辑划分,划分后的的逻辑单元相互独立。单元之间通过网络协议进行交互,并将计算中间结果数据流转到上一层逻辑单元。如图:
逻辑计算单元可以将有限的硬件资源合理划分,并且易于控制。数据可以根据不同策略分配到不同的逻辑但单元上,从而保证计算过程尽可能少的做数据流转。
- 将底层数存储(HDFS)进行资源隔离,保证存储单元可以相互独立,但又不破坏原有存储系统的完整性。如图: