github上排名靠前的java项目之_storm

时间:2024-11-25 21:34:49

1.和hadoop的比较

  Storm: 分布式实时计算,强调实时性,常用于实时性要求较高的地方

  Hadoop:分布式批处理计算,强调批处理,常用于数据挖掘、分析
2.Hadoop是实现了mapreduce的思想,将数据切片计算来处理大量的离线数据数据。hadoop处理的数据必须是已经存放在hdfs上或者类似hbase的数据库中,所以hadoop实现的时候是通过移动计算到这些存放数据的机器上来提高效率。
而storm不同,storm是一个流计算框架,处理的数据是实时消息队列中的,所以需要我们写好一个topology逻辑放在那,接收进来的数据来处理,所以是通过移动数据平均分配到机器资源来获得高效率。

hadoop每次map会将数据写入本地文件系统,然后在reduce的时候再读进来storm的优点是全内存计算,因为内存寻址速度是硬盘的百万倍以上,所以storm的速度相比较hadoop非常快(瓶颈是内存,cpu)。