Java笔记---Hadoop 2.7.1下WordCount程序详解_[hadoop@master mapreduce]$ hadoop jar hadoop-mapre-程序员宅基地

技术标签: Java  java  WordCount  云服务器  hadoop  

一、前言

在之前我们已经在 CenOS6.5 下搭建好了 Hadoop2.x 的开发环境。既然环境已经搭建好了,那么现在我们就应该来干点正事嘛!比如来一个Hadoop世界的HelloWorld,也就是WordCount程序(一个简单的单词计数程序)

二、WordCount 官方案例的运行

2.1 程序简介

WordCount程序是hadoop自带的案例,我们可以在 hadoop 解压目录下找到包含这个程序的 jar 文件(hadoop-mapreduce-examples-2.7.1.jar),该文件所在路径为 hadoop/share/hadoop/mapreduce。

我们可以使用 hadoop jar 命令查看该jar包详细信息。执行命令:hadoop jar hadoop-mapreduce-examples-2.7.1.jar

wc1

可以看到,该 jar 文件中并不止有一个案例,当然我们此时只想看看 WordCount 程序,其他的靠边边。那么我们按照提示,执行命令:hadoop jar hadoop-mapreduce-examples-2.7.1.jar wordcount 看看有什么东西?
wc2

根据提示,它说是需要输入文件和输出目录,那么接下来,我们就准备以下输入文件和输出目录吧。

注:其实只需要准备输入文件,不需要准备输出目录。因为 MapReduce 程序的运行,其输出目录不能是已存在的,否则会抛出异常。
这是为了避免数据覆盖的问题。请看《Hadoop权威指南》

2.2 准备材料

为了方便使用该官方 jar 文件,我们在当前目录下创建一个 input 目录(你也可以在别的目录下创建目录,目录名也可以自己取,喜欢就好),用来存放输入文件。然后准备2个输入文件。如下所示:
wc3

因为我们是使用 HDFS 文件系统的,所以我们要运行 WordCount 这个 MapReduce 程序的话,需要将文件放入 HDFS 上。因此我们使用 HDFS 的文件系统命令,在HDFS文件系统根目录下创建一个input目录,用来保存输入文件。执行命令:hadoop fs -mkdir /input
wc4

注:hadoop fs -mkdir 命令是用来在 HDFS 上创建目录的,类似于Linux下的 mkdir 命令

目录创建好后,我们需要把刚刚在本地文件系统上准备的输入文件拷贝到 HDFS 上。执行命令:h

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/GuLu_GuLu_jp/article/details/51298164

智能推荐

android 查看路由器ip,如何查看路由器ip地址进入登录页面-程序员宅基地

文章浏览阅读1.4k次。通过登陆路由器的IP地址我们才能进入路由器,那样我们就可以限制别人的网速,也可以通过路由设置只允许自己的电脑IP地址可以上网,别人是不能上网的。IP地址还有好多好处哦,不知道的可以去自行百度一下吧。这里我就不废话了,直接教大家怎么去查看自己的IP地址,这里分别介绍电脑和手机如何查看路由器ip地址的方法。方法一、通过路由器背面标签查看如下图所示,路由器背面标签上有路由器ip地址:192.168.1...._android 获取路由器ip地址

基于 Verilog 的经典数字电路设计(15)奇偶校验器-程序员宅基地

文章浏览阅读1.3w次,点赞3次,收藏75次。奇偶校验(Parity Check)是一种校验数据传输的正确性的方法,根据被传输的一组二进制代码的数位中 “1” 的个数是奇数或偶数来进行校验;采用奇数的称为奇校验,反之,称为偶校验;采用何种校验是事先规定好的,通常专门设置一个奇偶校验位,用它使这组代码中 “1” 的个数为奇数或偶数;例如奇校验,当接收端收到这组代码时,校验 “1” 的个数是否为奇数,从而确定传输代码的正确性。_奇偶校验器

asp中rs.addnew与rs.update更新数据库的方法-程序员宅基地

文章浏览阅读7k次。rs.addnew'增加一条新的空的数据记录rs("rs1")="添加的数据"rs.update'在空记录中增加了内容rs.closeset rs=nothing'对已有数据进行修改rs("rs1")="修改后的数据"rs.updaters.closeset rs=nothing==========================rs.add_rs.update

quartz的触发器CronTriggerBean 配置_quartz2 crontriggerfactorybean-程序员宅基地

文章浏览阅读601次。一个Quartz的CronTrigger表达式分为七项子表达式,其中每一项以空格隔开,从左到右分别是:秒,分,时,月的某天,月,星期的某天,年;其中年不是必须的,也就是说任何一个表达式最少需要六项! 例:0 0 12 ? * WED 表示每个星期三的12点执行,这里没有“年”这项! 字段名(项) 必须 值范围 特殊字符 秒 是 0-59 , - * / 分 是 0-59 , -_quartz2 crontriggerfactorybean

NGS概念大科普(转)-程序员宅基地

文章浏览阅读964次。NGS又称为下一代测序技术,高通量测序技术以高输出量和高解析度为主要特色,能一次并行对几十万到几百万条DNA分子进行序列读取,在提供丰富的遗传学信息的同时,还可大大降低测序费用、缩短测序时间的测序技术。Sanger法测序(一代测序):是一种利用DNA聚合酶来延伸结合在待定序列模板上的引物的测序技术。每一次序列测定由一套四个单独的反应构成,每个反应含有所有四种脱氧核苷酸三磷酸(dN..._ngs介绍

transformers库的使用【二】tokenizer的使用,模型的保存自定义_automodel.from_pretrained-程序员宅基地

文章浏览阅读1.4w次,点赞19次,收藏52次。使用标记器(tokenizer)在之前提到过,标记器(tokenizer)是用来对文本进行预处理的一个工具。首先,标记器会把输入的文档进行分割,将一个句子分成单个的word(或者词语的一部分,或者是标点符号)这些进行分割以后的到的单个的word被称为tokens。第二步,标记器会把这些得到的单个的词tokens转换成为数字,经过转换成数字之后,我们就可以把它们送入到模型当中。为了实现这种能把tokens转换成数字的功能,标记器拥有一个词表,这个词汇表是在我们进行实例化并指明模型的时候下载_automodel.from_pretrained

随便推点

android实现菜单栏第一部分主页折叠菜单_android 折叠二级菜单-程序员宅基地

文章浏览阅读1.2k次。首先我们需要重写一个onCreateOptionsMenu方法,然后在方法内使用add方法添加你想要添加的内容package com.example.imgsw;import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;..._android 折叠二级菜单

计算Fibonacci数列的前30项,需注意逻辑问题_斐波那契数列前30项-程序员宅基地

文章浏览阅读6k次,点赞2次,收藏5次。解析:斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418 317811,514229,832040…这个数列从第3项开始,每一项都等于前两项之和。F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)只要找到相应_斐波那契数列前30项

实训日记2021/7/1_excluded folders-程序员宅基地

文章浏览阅读644次。一、解决jstl导入爆红的问题1.有人说是因为把src被excluded了,把它从里面拉出来就行了,然后这个excluded是在File→project structure→Module里面的,但是我的src没有在这个里面。代码被excluded的意思是,将文件标记为Excluded目录后,idea就不会为该文件创建索引,全局搜索也不会搜里面的内容,编辑代码不会智能提示,Excluded Folders相当于代码废弃场2.!!!!!,有用有用!这个方法真的有用!百度上其他的解决方案我看着就不想试,直_excluded folders

Java并发编程系列:深入分析AQS原理_aqs 队列获得锁之后为什么执行thread.currentthread().interrupt()-程序员宅基地

文章浏览阅读406次。文章目录数据结构定义获取锁# Lock.lock -> Sync.lock# AQS.acquire -> Sync.tryAcquire# addWaiter# acquireQueued释放锁lockInterruptiblyCondition实现原理AQS又称为队列同步器,它是用来构建锁或其他同步组件的基础框架,它是实现ReentrangLock、Semaphore等同步工具的..._aqs 队列获得锁之后为什么执行thread.currentthread().interrupt()

visio设置页元素组_visio页元素组与页组区别-程序员宅基地

文章浏览阅读243次。在设计网页外观形状时,可以使用visio2013软件的【网站总体设计形状】,通过拖曳"页元素组",来实现多个网页重叠效果。_visio页元素组与页组区别

【CUDA】cuda安装 (windows版)_windows安装cuda-程序员宅基地

文章浏览阅读10w+次,点赞639次,收藏2.5k次。【CUDA】cuda安装 (windows版)前言官方教程安装工具的准备CUDA toolkit DownloadcuDNN Download2. CUDA 安装与配置过程测试环境是否安装成功2、cuDNN配置运行官方自带的demo前言windows10 版本安装 CUDA ,首先需要下载两个安装包CUDA toolkit(toolkit就是指工具包)cuDNN官方教程CUDA:https://docs.nvidia.com/cuda/cuda-installation-guide-mic_windows安装cuda

推荐文章

热门文章

相关标签