PHP与其他语言在Hadoop/MapReduce实现及云计算中的比较
我刚开始学习Hadoop和MapReduce,之前主要是用PHP,稍微接触过一点Java和Python。
不过,似乎大多数的MapReduce实现都是用Java、Ruby、C++或者Python写的。
我查了一下,发现确实有一些Hadoop和MapReduce的PHP实现,但大部分的资料还是集中在那四种语言上。
为什么在像Hadoop/MapReduce这样的云计算项目中,PHP会被视为“二等语言”呢?这让我很惊讶,因为在云计算之外,PHP似乎是最常用的语言,反而是上面提到的三种语言(除了C++)不如PHP受支持。
如果这只是个随意的选择——如果PHP在处理这些操作上和Python一样好,那我应该关注哪些库或项目呢?
3 个回答
1
原因是PHP不支持多线程和进程间的通信。
2
你可以看看Doctrine MongoDB对象文档映射器。它支持映射/归约。
10
PHP主要是用来在浏览器上显示内容的语言。大多数在MapReduce/Hadoop集群上运行的工作,其实和显示内容没有什么关系。
这些工作更多的是处理数据。PHP并不是处理数据时最常用的语言,远远不是。因此,处理数据相关技术中最常见的支持语言里,PHP自然不在其中。