台州做网站是什么,徐州网站关键词,网站建设主要工作由哪些,网站关键词优化价格文/朱季谦
我最近使用四台Centos虚拟机搭建了一套分布式hadoop环境#xff0c;简单模拟了线上上的hadoop真实分布式集群#xff0c;主要用于业余学习大数据相关体系。
其中#xff0c;一台服务器作为NameNode#xff0c;一台作为Secondary NameNode#xff0c;剩下两台当…文/朱季谦
我最近使用四台Centos虚拟机搭建了一套分布式hadoop环境简单模拟了线上上的hadoop真实分布式集群主要用于业余学习大数据相关体系。
其中一台服务器作为NameNode一台作为Secondary NameNode剩下两台当做DataNodes节点服务器类似下面这样一个架构—— NameNodeSecondary NameNodeDataNodesmaster1(192.168.200.111)√master2(192.168.200.112)√slave1(192.168.200.117)√slave2(192.168.200.115)√
接下来,就是开始通过hadoop自带的wordcount来统计一下文件当中的字符数量。
启动hadoop集群后在集群可用情况下按照以下步骤 一、进入到hadoop安装目录创建一个测试文件example.txt
我的安装目录是/opt/hadoop/app/hadoop/hadoop-2.7.5
[root192 hadoop-2.7.5]# pwd
/opt/hadoop/app/hadoop/hadoop-2.7.5新建一个example.txt并随机写入一些字符
aaa
bbb
cccc
dedef
dedf
dedf
ytrytrgtrcdscdscdsc
dedaxa
cdsvfbgf
uyiuyi
ss
xaxaxaxa接着在hdfs文件系统上新建一个input文件夹用来存放example.txt文件——
[root192 hadoop-2.7.5]# hdfs dfs -mkdir /input然后将example.txt复制到hdfs系统上的input目录下——
[root192 hadoop-2.7.5]# hdfs dfs -put example.txt /input检查一下可以看到example.txt文件已经在input目录底下了——
[root192 hadoop-2.7.5]# hdfs dfs -ls /input
Found 1 items
-rw-r--r-- 3 root supergroup 84 2021-10-20 12:43 /input/example.txt这些准备工作做好后就可以开始使用hadoop自带的jar包来统计文件example.txt当中各字符的数量了。
二、运行wordcount对文件字符进行统计
直接在NameNode节点对应的服务器上执行——
[root192 hadoop-2.7.5]# hadoop jar /opt/hadoop/app/hadoop/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /input /output这行指令的大概意思是分布式计算统计input目录底下的文件中的字符数量将统计结果reduce到output当中故而最后若执行没问题可以在output目录下获取到统计结果记录。
我第一次执行时发生了一个异常即执行完后日志运行到INFO mapreduce.Job: Running job: job_1631618032849_0002这一行时就直接卡在了这里没有任何动静了——
[hadoop192 bin]$ hadoop jar /opt/hadoop/app/hadoop/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /input /output
21/10/20 10:43:29 INFO client.RMProxy: Connecting to ResourceManager at master1/192.168.200.111:8032
21/10/20 10:43:30 INFO input.FileInputFormat: Total input paths to process : 1
21/10/20 10:43:30 INFO mapreduce.JobSubmitter: number of splits:1
21/10/20 10:43:31 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1631618032849_0002
21/10/20 10:43:31 INFO impl.YarnClientImpl: Submitted application application_1631618032849_0002
21/10/20 10:43:31 INFO mapreduce.Job: The url to track the job: http://master1:8088/proxy/application_1631618032849_0002/
21/10/20 10:43:31 INFO mapreduce.Job: Running job: job_1631618032849_0002百度了一番后根据一些思路最后将mapred-site.xml最开始的配置由
?xml version1.0?
?xml-stylesheet typetext/xsl hrefconfiguration.xsl?
configurationpropertynamemapreduce.framework.name/namevalueyarn/value/property
/configuration改成这里——
configurationpropertynamemapreduce.job.tracker/namevaluehdfs://master1:8001/valuefinaltrue/final/property
/configuration接着重启了hadoop集群就正常了日志信息就没有卡顿而是一步执行完成打印以下的日志记录—— 过程如果没有出现问题就可以到最后一步查看统计完的结果。
三、获取统计结果
以上步骤执行完后直接输入指令查看output目录下的信息可以看到里面生成了两个文件——
[root192 hadoop-2.7.5]# hdfs dfs -ls /output
Found 2 items
-rw-r--r-- 3 root supergroup 0 2021-10-20 12:47 /output/_SUCCESS
-rw-r--r-- 3 root supergroup 101 2021-10-20 12:47 /output/part-r-00000part-r-00000文件是存放统计结果的我们查看一下——
[root192 hadoop-2.7.5]# hdfs dfs -cat /output/part-r-00000
aaa 1
bbb 1
cccc 1
cdsvfbgf 1
dedaxa 1
dedef 1
dedf 2
ss 1
uyiuyi 1
xaxaxaxa 1
ytrytrgtrcdscdscdsc 1对比前面的example.txt文件可以看到当中dedf字符串是有两个其他都是1个hadoop统计结果也确实如此。
以上便是初步认识hadoop的一个小案例接下来我会在学习过程当中把值得分享的经验都总结下来。