hadoop有三种运行模式,一种是本地模式,一种是伪分布式模式,一种是完全分布式模式,本节课我们来安装好hadoop并且配置本地模式并进行文本里面的字符统计分析。视频讲解地址:https://ke.qq.com/course/2837340
步骤如下:
1、确保jdk安装正确
2、安装并配置hadoop
(1)采用root账号登陆(或者其他管理员账号登陆,如果用非管理账户的话,就需要用终端命令行操作,比不上直接界面操作方便)
(2)把安装包放进Centos下面的/etc/hadoop文件夹内:在etc文件夹下面创建hadoop文件夹,然后把安装包拖拽进去(VMware Workstation Pro),或者通过SecureCRT工具将安装包导入到hadoop文件夹内。
安装包地址:链接:https://pan.baidu.com/s/1AJLenl05gs75XOQJisOyFg 提取码:4t4d
把安装包解压到本地,如下图所示:
效果如下,解压后的压缩包可以删掉了:
我们展开hadoop-2.9.2文件夹可见以下文件夹:
各文件夹作用如下:
bin目录:存放对Hadoop相关服务(HDFS,YARN)进行操作的脚本
etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
sbin目录:存放启动或停止Hadoop相关服务的脚本
share目录:存放Hadoop的依赖jar包、文档、和官方案例
(3)配置hadoop环境变量
首先打开/etc/profile 这个系统配置文件,可以通过vi编辑器打开,也可以直接用gedit编辑器打开,图形界面通过gedit非常方便。
在文件的末尾新增配置内容如下(末尾三行):
倒数第三行含义:注释,告诉别人你下面要配置hadoop_home相关参数
倒数第二行含义: 设置Hadoop_home的值,也就是我们hadoop的安装路径(包含bin路径和sbin路径的那个目录就是hadoop安装路径)。 export 命令用于设置环境变量。
倒数第一行含义:设置Path的值,也就是我们所有的希望直接载入系统的环境变量。注意这里的分割符号是冒号而不是分号。意思是在原有的Path的内容基础上新增hadoop_home下面的bin路径和sbin路径。
最后保存,可以直接点击上面的“save”按钮,或直接ctrl+s
保存后,还需要让配置文件生效,使用的命令是:source filename 意思是在当前bash环境下读取并执行FileName中的命令。
所以我们要让profile生效,执行如下(下面第一行代码):
最后看是否安装配置成功,则可以通过查看hadoop的版本,下面的第二行就是了。
3、进行字符分析
本次用的是本地模式,在hadoop安装根目录下的share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar 这个包里面有wordcount可以实现词频统计。WordCount可以说是MapReduce中的helloworld了,单词计数主要完成的功能是:统计一系列文本文件中每个单词出现的次数,通过完成这个简单程序让读者摸清 MapReduce 程序的基本结构。 特别是对于每一个阶段的函数执行所产生的键值对。
(1)先在本地新建一个要被统计的文本文件。下面是在/etc/hadoop/下面新建一个examples文件夹(其实你新建在哪里都得)
然后在examples文件夹中新建helloword.txt文件
hellowrod.txt通过vi或gedit编辑器写一些内容并保存:
(2)调用wordcount来做统计
采用命令# hadoop jar jar地址 要分析的文件地址 输出结果地址
hadoop jar可以看做是java -jar的升级,可以和它一样带参数,像程序一样的解析,不同的是hadoop jar运行的jar包它会依赖于hadoop安装目录下面的一些环境,并且你jar包里指定了依赖了别的版本的jar包,hadoop jar会优先跑到它自己的share/hadoop/*目录下面去使用类,有的情况如果出现冲突,里面版本低于使用的,可以把hadoop里面相应的jar包删除。
以上语句意思是我已经通过cd 命令进入了hadoop安装目录。
以上语句意思是: 调用hadoop-2.9.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar (注意如果不是/etc/hadoop这个目录下,则mapreduce-examples-2.9.2.jar 的路径要写全)里面的wordcount功能来分析 examples/helloword.txt(注意如果不是/etc/hadoop这个目录下,则文本文件的路径要写全) 里面的词频数据,然后把结果输出到 当前目录下面的resultCount文件夹里面(系统会自动建立这个文件夹)。
运行后,我们可以看到/etc/hadoop/目录下面多了一个resultCount文件夹
(3)查看统计结果
打开resultCount文件夹,可以看到里面有两个文件,
其中,_SUCCESS文件说明执行成功,这个文件里面是空的,类似一个标注。
另外的一个part-r-00000文件里面就有词频数据:
来源:oschina
链接:https://my.oschina.net/u/4082616/blog/4428162