|
分布式计算主要研究如何利用多个主机的资源完成一项计算任务的问题。也就是说,当一项任务需要利用多个计算机共同完成时,应采用分布式计算模式。通常,分布式计算关注的是如何将一个需要非常巨大的计算能力才能解决的问题分解成若干个较小的“小问题”,然后把这些“小问题”分配给不同计算机进行处理,最后把这些计算结果综合起来得到最终结果。根据参与分布式计算的主机之间的关系,分布式计算可以分为主从模式和P2P模式两种。 需要注意的是,分布式计算与并行计算是两个不同的概念: 1.并行计算是指同时使用多种计算资源解决计算问题的过程,也是提高计算机系统计算速度和处理能力的一种有效手段。其基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个处理机的超级计算机,也可以是以某种方式互连的若干台独立计算机组成的集群。 2.“并行计算”和“分布式计算”分别是相对于“串行计算”和“集中式计算”提出的相对概念。并行计算可分为时间上的并行和空间上的并行。时间上的并行主要指流水线技术,而空间上的并行则是指用多个处理器并发地执行计算。 3.“分布式计算”和“并行计算”并不是相互排斥和矛盾的概念,而是从不同角度观察计算模式以后看到的不同结果。因此,在同一个数据处理任务中,可能分布式计算和并行计算并存——并行分布式计算或分布式并行计算。例如,PVM(Parallel Virtual Machine,并行虚拟机)就是支持并行分布式计算的一种混合型计算模式。再如,MapReduce计算模型就采用了分布式并行计算的思想。当然,分布式计算不一定以并行形式处理,也可以以串行方式处理。同样,并行计算也未必采用分布式结构,也可以在集中式结构之上通过虚拟化的方式实现并行计算。 【出处】朝乐门.数据科学,清华大学出版社,2016年8月第1版.
|