一:Mapreduce编程模型

1.介绍

  解决海量数据的计算问题。

  》map:映射

  处理不同机器上的块的数据,一个map处理一个块。

  》reduce:汇总

  将map的结果进行汇总合并

  

2.一个简单的MR程序

  map

  reduce

  input

  output

3.在处理中,格式的流向

  《key,value》

4.需要思考的问题

  处理的数据是什么样的

  map的输出格式

  reduce的输出数据格式

二:完成Wordcount的程序

1.数据的输入格式说明(默认方式)

  Hadoop Yarn

    》key:代表偏移量

    》value:这一行的值

    》<0,Hadoop Yarn>

2.map处理的数据格式

  Hadoop Yarn

  Hadoop Spark

  分割单词

  每出现一次就这样处理一下

  <Hadoop,1>   <Yarn,1>

  <Hadoop,1>  <Spark,1>

  

3.reduce处理的数据格式

  将相同key的value值加在一起就是单词出现的次数

4.新建包以及类

  

5.将程序分成三块的框架

  Mapper类,Reducer类,Driver的run方法

  

  

3.将map与reduce相结合,并在main中运行

  分为四大部分:input,output,mapper,reducer

  

4.Mapper类

  将value转化为字符串

  使用空格分隔

  使用context输出键值对。

  

5.Reducer类

  

6.在main()中写入文件操作系统的路径。

  

7.结果

  

  

8.出现的结果有些问题,因为没有计数。

  

  IntWritable(1),其参数为1.表示每出现一次就记录一次。

9.最新的结果

  

三:打包在yarn上运行

10.因为需要把jar分发到节点上,所以需要修改

  

11.打jar包

  

12.选择jar包的路径

  

13.选择jar运行的主类

  

14.运行jar在yarn上

  

15.运行结果

  

16.在yarn的管理界面上看

  

17.在Configuration中search一下mapper

  

  同样可以reduce,或者fileoutput等查阅一些参数。

013 MapReduce八股文的wordcount应用的更多相关文章

  1. MapReduce编程之wordcount

    实践 MapReduce编程之wordcount import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Fi ...

  2. mapreduce入门之wordcount注释详解

    mapreduce版本:0.2.0之前 说明: 该注释为之前学习时找到的一篇,现在只是在入门以后对该注释做了一些修正以及添加. 由于版本问题,该代码并没有在集群环境中运行,只将其做为理解mapredu ...

  3. mapreduce程序编写(WordCount)

    折腾了半天.终于编写成功了第一个自己的mapreduce程序,并通过打jar包的方式运行起来了. 运行环境: windows 64bit eclipse 64bit jdk6.0 64bit 一.工程 ...

  4. 2 weekend110的mapreduce介绍及wordcount + wordcount的编写和提交集群运行 + mr程序的本地运行模式

    把我们的简单运算逻辑,很方便地扩展到海量数据的场景下,分布式运算. Map作一些,数据的局部处理和打散工作. Reduce作一些,数据的汇总工作. 这是之前的,weekend110的hdfs输入流之源 ...

  5. Mapreduce概述和WordCount程序

    一.Mapreduce概述 Mapreduce是分布式程序编程框架,也是分布式计算框架,它简化了开发! Mapreduce将用户编写的业务逻辑代码和自带默认组合整合成一个完整的分布式运算程序,并发的运 ...

  6. 运行第一个MapReduce程序,WordCount

    1.安装Eclipse 安装后如果无法启动重新配置Java路径(如果之前配置了Java) 2.下载安装eclipse的hadoop插件 注意版本对应,放到/uer/lib/eclipse/plugin ...

  7. MapReduce 编程模型 & WordCount 示例

    学习大数据接触到的第一个编程思想 MapReduce.   前言 之前在学习大数据的时候,很多东西很零散的做了一些笔记,但是都没有好好去整理它们,这篇文章也是对之前的笔记的整理,或者叫输出吧.一来是加 ...

  8. Hadoop学习之路(5)Mapreduce程序完成wordcount

    程序使用的测试文本数据: Dear River Dear River Bear Spark Car Dear Car Bear Car Dear Car River Car Spark Spark D ...

  9. 用python写MapReduce函数——以WordCount为例

    尽管Hadoop框架是用java写的,但是Hadoop程序不限于java,可以用python.C++.ruby等.本例子中直接用python写一个MapReduce实例,而不是用Jython把pyth ...

随机推荐

  1. SQL——将表中的最大ID+1插入新的ID中------Insert into 表 MAX(表id) +1

    表结构:group表(groupid int,groupname varchar) 表中数据:id name 分组1 分组2 分组3 分组4 ----------------------------- ...

  2. android AsyncHttpClient使用

    1.www.github.com下载jar包 loopj/android-async-http 将下载好的文件导入项目中 2.main.xml <?xml version="1.0&q ...

  3. 列表视图QlistView

    列表视图QlistView要配合setModel模型一起使用 例子一 QStringListModel()  字符串列表模型 import sys from PyQt5.QtWidgets impor ...

  4. ResNet152网络复现(Caffe)

    一.准备数据集 1)  下载数据集 Imagnet网站上下载了三类图片,分别是big cat.dog.fish,其中训练集的图片数一共是4149,测试集的图片数是1003,训练集和测试集的图片数比例4 ...

  5. python3之redis

    1.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  6. ubuntu16.04安装opencv2.4.13

    1.更新 sudo apt-get update sudo apt-get upgrade 2.安装关联库 2.1 搭建C/C++编译环境 sudo apt-get install build-ess ...

  7. Excel中快捷键Ctrl+End覆盖过多

    Sub dd() MsgBox ActiveSheet.UsedRange.Address End Sub 更简单的方法:通过快捷键,选中空白行/列,然后删除行/列,保存,OK!

  8. Linux内核驱动之延时 【转】

    转自:http://blog.chinaunix.net/uid-24219701-id-3288103.html  jiffies 计数器 定时器中断由系统定时硬件以规律地间隔产生; 这个间隔在启动 ...

  9. 重装系统,出现:Units specified don't exist SHSUCDX can't install

    重装系统,出现:Units specified don't exist SHSUCDX can't install 解决方案1: 首先是你的硬盘分区不对吧 先用PQ格成ntfs或far32 进PE把C ...

  10. Win7 启动修复

    先让我们看一下windows7的启动过程的常识:电脑加电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后读取活动主分 ...