为什么 MPP 系统需要特殊的硬件?



为什么像 Amazon Redshift 这样的 MPP 系统需要专门的硬件。为什么他们不能在现成的硬件上工作?而map-reduce系统自然可以在商用硬件上运行。

大规模并行系统不一定需要特殊的硬件。维基百科将网格计算作为一种MPP类型,网格计算就是在随机的,现成的系统(BOINC,Folding@Home等(上运行。

你特别提到了MapReduce框架的想法。谷歌最初的实现(以及随后的实现(是专门为在商品硬件上运行良好的而设计的。MapReduce在其约束范围内工作,例如节点故障,节点之间的有限通信等等。重要的是,你可以在MapReduce上运行的作业类型受到严格的限制。您有一个地图步骤,并且您有一个归约步骤;这两个步骤都不涉及节点之间的通信。你不能让所有的工人互相八卦!

但是,其他版本的 MPP 具有基本硬件以外的要求。例如,大规模并行处理器阵列是具有大量内核的专用IC,其排列方式使内核可以与其他内核实现高速、低延迟互连。

你不能在标准计算机上做到这一点;每个芯片的内核数量要低得多,内核的通信方式也不同(通常使用大量的共享内存(。

最新更新