首页 > 代码库 > storm与hadoop的对照

storm与hadoop的对照

   hadoop 是实现了 mapreduce 的思想,将数据切片计算来处理大量的离线数据。

hadoop处理的数据必须是已经存放在 hdfs 上或者类似 hbase 的数据库中。所以
hadoop 实现的时候是通过移动计算到这些存放数据的机器上来提高效率而 storm
不同,storm 是一个流计算框架。处理的数据是实时消息队列中的,所以须要我们
写好一个 topology 逻辑放在那,接收进来的数据来处理,所以是通过移动数据平均
分配到机器资源来获得高效率。
   
      hadoop 的长处是处理数据量大(瓶颈是硬盘和 namenode,网络等),分析
灵活,可以通过实现 dsl,mdx 等拼接 hadoop 命令或者直接使用 hive。pig 等来
灵活分析数据。适应对大量维度进行组合分析缺点就是慢:每次运行前要分发 jar 
包,hadoop 每次 map 数据超出阙值后会将数据写入本地文件系统,然后在 reduce 
的时候再读进来。
   
   storm 的长处是全内存计算,由于内存寻址速度是硬盘的百万倍以上,所以 storm 
的速度相比較 hadoop 很快(瓶颈是内存。cpu)缺点就是不够灵活:必需要先写
好 topology结构来等数据进来分析。

storm与hadoop的对照