原文地址:http://storm.apache.org/documentation/Rationale.html
过去的十年见证了数据处理领域的一次革命。MapReduce,Hadoop以及其它相关的技术使得我们可以存储与处理的数据达到了过去想都不敢想的量级。不幸的是,这些数据处理技术并不能用于实时系统。本身这些技术也不是为了用于实时系统而生的。我们也没有任何方式可以将Hadoop改造以用于实时系统;实时数据处理与批处理截然不同。
然而大规模实时数据处理的需求与日俱增,缺少一个“实时的Hadoop”已经成为数据处理领域最大的缺憾。
Storm填补了这个缺憾。
在Storm出现以前,通常你需要手工建立一个队列节点与工作节点的网络来进行实时数据处理。工作节点处理队列中的消息,更新数据库,发送消息到另一个队列以进行进一步的处理。这样的方式有许多问题:
尽管在处理大量消息时,队列节点与工作节点这样的处理方式运转得不是太好,但消息处理无疑是实时计算的基本范式。问题是应该怎么样才能让消息处理可以做到不丢数据,可以处理超大规模的数据,并且可以很简单的来使用和运维?
Storm可以解决这些问题。
Storm暴露了一系列的原语用于实时计算。就像MapReduce极大的简化了并行批处理程序的编写,Storm的原语也极大的简化了并行实时计算程序的编写。
Storm的关键特性:
原文地址:http://blog.csdn.net/kisimple/article/details/43829063