使用消息队列VS Map / Reduce进行分布式计算

时间:2012-05-02 12:59:16

标签: hadoop mapreduce amqp hdfs

上下文:

我们正在考虑将符合AMQP的解决方案作为计算每天90 gb的恒定实时数据流的方法。我们想要实现的是基于我们观察到的指标的全部或部分组合或多或少的实时统计数据。所考虑的策略是在队列上发送数据并让工作者处理数据的增量,将数据作为原始数据的聚合发送回队列。

观察:

对我来说,这看起来像Hadoop之类的工作,但是提出了担忧(和盾牌),主要是关于速度。我没有时间对两者进行基准测试,但我们期望通过队列(在10~100 mb / s附近的任何地方)抽取大量数据。我仍然认为它看起来像是分布式计算系统的工作,我也觉得队列解决方案比分布式计算解决方案更差。

问题:

简单地说,我是对的吗?我已经阅读了一些关于Hadoop + HDFS的内容,我正在考虑使用另一个FS,比如Lustre等,来规避NodeName SPOF,并使用某种解决方案来对任何类型的节点的故障进行某种容忍。整个集群。

1 个答案:

答案 0 :(得分:2)

当您需要失败,良好的平衡等时,很难编写自己的“分布式环境”解决方案。如果您需要近乎实时的地图/缩小,您应该结帐storm这是Twitter使用的他们巨大的数据需求。它比hadoop更简单,更好地消耗队列类型输入(在我看来)。

此外,如果您决定分析hadoop上的数据,请不要过多担心名称节点的SPOF,有some ways可以避免它。