您的位置:首页 > 大数据 > Hadoop

Hadoop的单机模式和官方示例

2020-06-08 04:51 267 查看

一、 单机模式说明

单机模式是Hadoop的默认模式。
又称本地模式、独立模式等。
因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。
该模式主要用于开发调试MapReduce程序的应用逻辑。

1. 环境准备

在一台linux机器上,安装好hadoop运行环境,安装方式请查看:HADOOP运行环境搭建

2. 配置说明

首先说明,单机模式在安装之后不需要修改任何配置,配置文件为空即可!
之所以单机模式不需要任何配置文件,是因为配置文件不配置时,系统默认值即为单机模式所需。

配置文件名 配置项 配置项含义 默认值 默认值含义
core-site.xml fs.defaultFS 默认文件系统的名称,可以是HDFS的NameNode地址或者本地 file:/// 文件读取和存储都在本地
mapred-site.xml mapreduce.framework.name 指定执行MapReduce任务的框架。可以是本地、经典、yarn local 指定MR运行在本地

二、本地运行官方示例

搭建完成Hadoop运行环境之后,无需任何配置,即可开始本地MapReduce的测试任务,官方在share文件夹下,提供了一些官方样例。

1. 官方Grep案例

1. 在/opt/module/hadoop-2.7.2文件下面创建一个input文件夹,作为MR任务的输入目录

[root@hadoop101 hadoop-2.7.2]# pwd
/opt/module/hadoop-2.7.2
[root@hadoop101 hadoop-2.7.2]# mkdir input

2. 在输入目录中,添加一些测试文件,这里可以将hadoop的配置文件复制进来

[root@hadoop101 hadoop-2.7.2]# cp etc/hadoop/*.xml input

3. 执行MR任务

[root@hadoop101 hadoop-2.7.2]# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'

这句脚本的含义是,调用share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar脚本,执行grep方法,输入目录时input,输出目录时output,将统计满足正则表达式’dfs[a-z.]+'的所有内容输出到output目录下的文件中

4. 验证执行结果

在output出现大小为0的,名为SUCCESS的文件,则说明任务执行成功,另一个以part开头的文件,就是这次mr任务的执行结果,可以使用cat命令查看输出内容。

2. 官方WordCount案例

1. 在/opt/module/hadoop-2.7.2文件下面创建一个wcinput文件夹

[root@hadoop101 hadoop-2.7.2]# pwd
/opt/module/hadoop-2.7.2
[root@hadoop101 hadoop-2.7.2]# mkdir wcinput

2. 在wcinput文件下创建一个wc.input文件

[root@hadoop101 hadoop-2.7.2]#  cd wcinput
[root@hadoop101 wcinput]# touch wc.input

3. 编辑wc.input文件

在文件中输入以下内容:

hadoop yarn
hadoop mapreduce
atguigu
atguigu

4. 回到Hadoop目录/opt/module/hadoop-2.7.2

5. 执行MR任务

[root@hadoop101 hadoop-2.7.2]# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput

这句脚本的含义是,调用share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar脚本,执行wordcount方法,输入目录时input,输出目录时output,将input目录下的所有文件中,所有单词出现的次数统计出来,输出到output目录下的文件中。

6. 验证执行结果

在output出现大小为0的,名为SUCCESS的文件,则说明任务执行成功,另一个以part开头的文件,就是这次mr任务的执行结果,可以使用cat命令查看输出内容。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: