分析MapReduce与Storm的异同

[Author]: kwu

1、MapReduce与Storm处理数据的不同:

MapReduce  处理大数据、批处理,数据是相对不变的。

Storm:流数据、实时处理,流数据在实时变化。

对流数据进行并进处理

1) 对于单机来说,使用多进程,多线程。

2) 多机同时多进程、多线程的数据处理(分布式)

2、MapReduce 与storm都是分阶段

1)map、reduce

2)storm处理的阶段 :  spout、bolt

3)MR运行是会结束的,storm是永不停的相当于tomcat的服务。

4)单位时间内处理的数据量,MR大于Storm

5) stream 流时计算。需要实时处理的数据,地震的数据,电商网站的实时数据,推荐,航班。

6)需要看每个月的结果,用MR来处理

3、tuple是storm数据处理的基本单位

实现上相当于MR的KV键值对

4、spout是storm对外的接口

spout是storm数据输入的来源进入了storm处理范围之内

之后的数据交给,bolt阶段处理。

spout --> bolt (处理的单元为 tuple)

通过 oo 封装成 topology

类型MR中的JOB的概念。

5、相关配置文件

MapReduce: mapred-site.xml

storm: Storm.yaml

配置项对大小写及空格敏感

时间: 2024-10-18 11:10:53

分析MapReduce与Storm的异同的相关文章

分析MapReduce执行过程

MapReduce运行的时候,会通过Mapper运行的任务读取HDFS中的数据文件,然后调用自己的方法,处理数据,最后输出. Reducer任务会接收Mapper任务输出的数据,作为自己的输入数据,调用自己的方法,最后输出到HDFS的文件中. Mapper任务的执行过程 每个Mapper任务是一个java进程,它会读取HDFS中的文件,解析成很多的键值对,经过我们覆盖的map方法处理后,转换为很多的键值对再输出.整个Mapper任务的处理过程又可以分为以下几个阶段. 把Mapper任务的运行过程

Storm on Yarn :原理分析+平台搭建

Storm on YARN: Storm on YARN被视为大规模Web应用与传统企业应用之间的桥梁.它将Storm事件处理平台与YARN(Yet Another Resource Negotiator)应用管理框架进行了组合,为此前进行批处理的Hadoop应用提供了低延迟的处理能力. 诞生背景(yahoo): 雅虎公司平台副总裁Bruno Fernandez-Ruiz表示,他们发现Hadoop在处理海量数据时的速度还不够快.Hadoop和MapReduce的速度无法满足用户事件,比如电子邮件

storm启动nimbus源码分析-nimbus.clj

nimbus是storm集群的"控制器",是storm集群的重要组成部分.我们可以通用执行bin/storm nimbus >/dev/null 2>&1 &来启动nimbus.bin/storm是一个python脚本,在这个脚本中定义了一个nimbus函数: nimbus函数 def nimbus(klass="backtype.storm.daemon.nimbus"):    """Syntax: [s

Hadoop之MapReduce程序分析

摘要:Hadoop之MapReduce程序包括三个部分:Mapper,Reducer和作业执行.本文介绍和分析MapReduce程序三部分结构. 关键词:MapReduce   Mapper  Reducer   作业执行 MapReduce程序包括三个部分,分别是Mapper,Reducer和作业执行. Mapper 一个类要充当Mapper需要继承MapReduceBase并实现Mapper接口. Mapper接口负责数据处理阶段.它采用形式为Mapper<K1,V1,K2,V2>的Jav

MapReduce V1:Job提交流程之JobClient端分析

我们基于Hadoop 1.2.1源码分析MapReduce V1的处理流程.MapReduce V1实现中,主要存在3个主要的分布式进程(角色):JobClient.JobTracker和TaskTracker,我们主要是以这三个角色的实际处理活动为主线,并结合源码,分析实际处理流程.下图是<Hadoop权威指南>一书给出的MapReduce V1处理Job的抽象流程图: 如上图,我们展开阴影部分的处理逻辑,详细分析Job提交在JobClient端的具体流程.在编写好MapReduce程序以后

弄清Spark、Storm、MapReduce的这几点区别才能学好大数据

很多初学者在刚刚接触大数据的时候会有很多疑惑,比如对MapReduce.Storm.Spark三个计算框架的理解经常会产生混乱. 哪一个适合对大量数据进行处理?哪一个又适合对实时的流数据进行处理?又该如何来区分他们呢? 我对比整理了这3个计算框架的基本知识,大家可以了解一下以便对这个3个计算框架有一个整体的认识. 大数据学习群119599574 MapReduce 分布式离线计算框架 主要适用于大批量的集群任务,由于是批量执行,故时效性偏低. 原生支持 Java 语言开发 MapReduce ,

storm:最火的流式处理框架

本文出处:www.cnblogs.com/langtianya/p/5199529.html 伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样.更加便捷,同时对于信息的时效性要求也越来越高.举个搜索场景中的例子,当一个卖家发布了一条宝贝信息时,他希望的当然是这个宝贝马上就可以被卖家搜索出来.点击.购买啦,相反,如果这个宝贝要等到第二天或者更久才可以被搜出来,估计这个大哥就要骂娘了.再举一个推荐的例子,如果用户昨天在淘宝上买了一双袜子,今天想买一副泳镜去游泳,但是

Storm介绍

Storm是一个分布式的.可靠的.容错的数据流处理系统(流式计算框架,可以和mapreduce的离线计算框架对比理解). 整个任务被委派给不同的组件,每个组件负责一个简单的特定的处理任务.Storm集群的输入流是一个叫spout的组件负责接入处理.spout把数据传 给bolt组件,bolt组件可以对数据完成某种转化.bolt组件可以把数据持久化,或者传送到其他的bolt.可以把Storm集群想象成一个 bolt组件链,每个组件负责对spout流入的数据(也可以是其他bolt流入的数据)进行某种

Hadoop第5周练习—MapReduce计算气象温度等例子

1    运行环境说明... 4 1.1     硬软件环境... 4 1.2     机器网络环境... 4 2    书面作业1:对云计算的看法... 4 2.1     书面作业1内容... 4 2.2     回答... 5 3    书面作业2:使用MapReduce求每年最低温度... 6 3.1     书面作业2内容... 6 3.2     运行代码... 6 3.2.1   MinTemperature. 6 3.2.2   MinTemperatureMapper6 3.2