Hadoop运行模式包括:本地模式、伪分布式模式,以及完全分布式模式。
1、本地模式
安装简单,在一台机器上运行服务,几乎不用做任何配置,但仅限于调试用途。没有分布式文件系统,直接读写本地操作系统的文件系统。
2、伪分布式模式
在单节点上同时启动namenode、datanode、jobtracker、tasktracker、secondary namenode等进程,模拟分布式运行的各个节点。配置已经很接近完全分布式。
3、完全分布式模式
正常的Hadoop集群,由多个各司其职的节点构成。
本地运行模式
需求
已经配置java环境
已经配置hadoop环境
一、官方Grep案例
1.在hadoop-2.7.2文件下面创建一个input文件夹
mkdir input
2.将Hadoop的xml配置文件复制到input
cp etc/hadoop/*.xml input
3.执行share目录下的MapReduce程序
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'
,grep为匹配文本,input为输入文件的路径,output为输出文件的路径,'dfs[a-z.]+'为匹配的正则表达式。
因为配过环境变量,所以可以不写bin/,直接写hadoop jar。
注意:MapReduce执行时,如果输出路径存在,则会报错。
4.查看输出结果
cat output/*
也可以查看output目录下的part-r-00000文件。
二、官方WordCount案例
1.创建在hadoop-2.7.2文件下面创建一个wcinput文件夹
mkdir wcinput
2.在wcinput文件下创建一个wc.input文件
vim wcinput/wc.input
在文件中输入如下内容:
hadoop yarn
hadoop mapreduce
yarn hdfs
hadoop
3.执行程序
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput
,wordcount为统计次数,wcinput为输入文件的路径,wcoutput为输出文件的路径。
注意:MapReduce执行时,如果输出路径存在,则会报错。
4.查看结果
cat wcoutput/part-r-00000