Hadoop与Storm的一点区别
Hadoop是实现了mapreduce的思想,将数据切片计算来处理大量的离线数据数据。hadoop处理的数据必须是已经存放在hdfs上或者类似hbase的数据库中,所以hadoop实现的时候是通过移动计算到这些存放数据的机器上来提高效率
而storm不同,storm是一个流计算框架,处理的数据是实时消息队列中的,所以需要我们写好一个topology逻辑放在那,接收进来的数据来处理,所以是通过移动数据平均分配到机器资源来获得高效率。
总的来说
hadoop的优点是处理数据量大(瓶颈是硬盘和namenode,网络等),分析灵活,可以通过实现dsl,mdx等拼接hadoop命令或者直接使用hive(超烂。。),pig等来灵活分析数据。适应对大量维度进行组合分析
ps:相较与hive,pig建议自己实现mdx,即灵活又高效
缺点就是慢:hadoop每次map会将数据写入本地文件系统,然后在reduce的时候再读进来
storm的优点是全内存计算,因为内存寻址速度是硬盘的百万倍以上,所以storm的速度相比较hadoop非常快(瓶颈是内存,cpu)
缺点就是不够灵活:必须要先写好topology结构来等数据进来分析,如果我们需要对几百个维度进行组合分析,那么。。。
另外推荐storm的DRPC实在太有用了,以至于这个本来要分理出来的项目,被并入storm^^
相关推荐
枫叶上的雨露 2020-05-02
LandryBean 2020-03-12
一名java从业者 2020-01-09
weeniebear 2013-03-25
weeniebear 2014-05-28
sfqbluesky 2019-12-12
AbnerSunYH 2016-08-12
weeniebear 2016-08-11
Stereo 2016-07-27
芒果先生Mango 2018-05-31
dykun 2019-08-16
GimmeS 2016-10-11
benbendy 2016-09-30
Johnhao 2016-09-30
AbnerSunYH 2016-04-28
benbendy 2016-04-15