【发布时间】:2012-06-30 06:59:11
【问题描述】:
Storm 与 Hadoop 相比如何? Hadoop 似乎是开源大规模批处理的事实标准,Storm 比 hadoop 有什么优势吗?还是它们完全不同?
【问题讨论】:
-
我认为这个问题完全有道理,我很难理解这样一个有用的问题是如何被关闭为非建设性的。问题很直接,不需要事实、参考资料等。
标签: hadoop streaming apache-storm
Storm 与 Hadoop 相比如何? Hadoop 似乎是开源大规模批处理的事实标准,Storm 比 hadoop 有什么优势吗?还是它们完全不同?
【问题讨论】:
标签: hadoop streaming apache-storm
你为什么不说出你的意见。
Twitter Storm 被吹捧为实时 Hadoop。这更像是一种易于消费的营销方式。
它们表面上很相似,因为它们都是分布式应用程序解决方案。除了主/从、基于 Zookeeper 的协调等典型的分布式架构元素之外,在我看来,这种比较就落伍了。
Twitter 更像是一个处理数据的管道。管道连接各种计算节点,这些节点接收数据、计算和传递输出。 (术语是 spouts 和 bolts)将此类比扩展为一个复杂的管道布线,可以在需要时重新设计,你就会得到 Twitter Storm。
简而言之,它处理数据。没有延迟。
Hadoop 在这方面的不同主要是由于 HDFS。它是一种面向分布式存储和容忍许多规模(磁盘、机器、机架等)中断的解决方案
M/R 旨在利用 HDFS 上的数据本地化来分发计算作业。它们一起不提供实时数据处理的设施。但是,当您查看大数据时,这并不总是需要。 (大海捞针的比喻)
简而言之,Twitter Storm 是一个分布式实时数据处理解决方案。我认为我们不应该比较它们。 Twitter 之所以构建它,是因为它需要一个工具来实时处理小推文,但数量巨大。
如果你不得不将它与某些东西进行比较,请参阅:HStreaming
【讨论】:
基本上,它们都用于分析大数据,但 Storm 用于实时处理,而 Hadoop 用于批处理。
这是我发现的一个很好的 Storm 介绍: Click here
【讨论】:
与其进行比较,它们现在应该通过批处理 + 实时(伪实时)处理相互补充。有对应的视频演示——Ted Dunning on Twitter's Storm
【讨论】:
我使用 Storm 已经有一段时间了,现在我放弃了这项非常棒的技术,转而使用一项了不起的技术:Spark (http://spark.apache.org),它为开发人员提供了用于批处理或流处理(微批处理)的统一 API以及机器学习和图形处理。
值得一试。
【讨论】:
Storm 适用于快速数据(实时),而 Hadoop 适用于大数据(预先存在的大量数据)。 Storm 无法处理大数据,但它可以生成大数据作为输出。
【讨论】:
Apache Storm 是一个免费和开源的分布式实时计算系统。 Storm 可以轻松可靠地处理无限制的数据流,实时处理就像 Hadoop 进行批处理一样。
由于 Hadoop 生态系统中存在许多子系统,我们必须根据业务需求和特定系统的可行性来选择合适的子系统。
Hadoop MapReduce 对于一次处理一项作业非常有效。这就是为什么 Hadoop 被广泛用作数据仓库工具而不是数据分析工具的原因。
由于问题仅与“Storm”与“Hadoop”有关,请查看Storm use cases - 金融服务、电信、零售、制造、运输.
查看dezyre article 以比较 Hadoop、Storm 和 Spark。它解释了相同点和不同点。
可以用下图概括(来自dezyre文章)
【讨论】: