Parallel Python是python的分布式计算模块,其功能是可以以 函数+数据 的形式,将任务分布到Cluster中的各台机器的CPUs上进行运算。
同时Parallel Python的Cluster构建支持Auto Discovery,可以在内网中非常方便的搭建起一个自组织的分布式计算平台。
Parallel Python没有DFS,可以理解为残疾版的MapReduce。
动机是部门的Hadoop环境还没有搭建起来,处理Log相当耗时相当冗长,于是花了点时间尝试了下Parallel Python(以下简称PP)。
测试了一下性能,结果PP并不适合这种大数据量、高计算复杂度的应用。
主要原因是数据交换瓶颈:PP是一个计算资源共享平台,但是在存储方面没有一个分布式文件系统支持。直接的结果是对于大数量应用,性能反而不如单机。
但是对于类似最优化一类小数据量大计算量的应用,还是相当适用的。
btw,PP的可控制性不是很强。比如任务分发机制是外部无法调节的,经常会造成cluster中的机器空闲。
不知道PP是怎么实现将本地的函数分发到各个Node,感觉很奇妙。哪位达人看过代码?

