在Hadoop环境里面统计西游记文章的词组(hdfs实验)

简介: 在Hadoop环境里面统计西游记文章的词组(hdfs实验)

在Hadoop的环境里面我们测试一个文件,对西游记这个书籍里面的所有词语,进行统计排序。hadoop包括两个核心组成:HDFS:分布式文件系统,存储海量的数据MapReduce:并行处理框架,实现任务分解和调度。

hadoop运行机制

MapReduce工作原理

image.png

首先我们准备四个文件,在自己Windows里面已经写好的,或者是从其他地方copy过来的(涉及一些参数和路径的修改)

点击下载这四个参考文件

前面两文件是实现我们的文章词组的分割处理和排序处理(Python文件),后面的一个是执行文件,最后一个是西游记里面的文章,这个里面已经利用pycharm的jieba 库做好的文字的处理,只有词组和空格,没有标点符号和其他的东西。

2020092822361116.png

准备:

首先打开虚拟机,启动Hadoop

20200928222800525.png

这样就启动成功了,有的时候我们很容易忽略这个,我的这台机器配置了,开机自启动,所以打开虚拟机就会自己启动,但是如果没有的话我们就需要利用下面的代码

start-all.sh

之后等待启动OK,再去查看即可

实验过程

思路:

1.首先把文件上传到我们的虚拟机home目录,然后对其中三个文件权限进行修改。

2.修改run.sh 里面的参数,Hadoop文件路径,Python文件路径。

3.上传我们文件到hdfs本地

实验过程:

1.首先我们在home目录里面新建一个test1的文件夹,然后把这四个文件拖到我们新建的这个文件夹里面。然后我们去修改其中2个Python文件的内容,一个sh的文件路径即可

whw@whw-hadoop:~/test1$ chmod 777 mapper.py 
whw@whw-hadoop:~/test1$ chmod 777 reduce.py 
whw@whw-hadoop:~/test1$ ll
总用量 1420
drwxr-xr-x  2 whw whw    4096 9月  25 23:44 ./
drwxr-xr-x 21 whw whw    4096 9月  28 22:02 ../
-rwxrwxrwx  1 whw whw     546 9月  25 23:44 mapper.py*
-rwxrwxrwx  1 whw whw    1038 9月  25 23:44 reduce.py*
-rwxrw-rw-  1 whw whw     275 9月  25 23:42 run.sh*
-rwxrw-rw-  1 whw whw 1431328 9月  24 21:45 xyj_stopwords.txt*
whw@whw-hadoop:~/test1$ 

2.然后我们再去本地的hdfs里面创建一个test1的文件

whw@whw-hadoop:~$ hdfs dfs -mkdir /test1
mkdir: `/test1': File exists
whw@whw-hadoop:~$

我这里的文件已经存在了,可以通过这个命令去验证一下

hdfs dfs -ls /test1

然后把我们已经处理好一部分的西游记文件上传到hdfs 本地文件

hdfs dfs -copyFromLocal /home/whw/test1/xyj_stopwords.txt /test1/

注意copyFromLocal的大小写,然后就是我们的这个文件路径,我们直接点击该文件的属性,复制路径和文件名即可,再去终端粘贴,最后一步就是把这个文件放在那里,我们放在本地的test1的文件夹下面,注意后面加了一个/,如果不加这个,就会给这个文件重命名了。

查看

hdfs dfs -ls /test1/
hdfs dfs -cat /test1/xyj_stopwords.txt

image.png

3.修改run.sh

image.png

首先找到Hadoop的文件路径

sudo find / -name hadoop-stream*

20200928231330667.png

修改完毕

20200928231720648.png

注意由于我之前测试过一次,所以输出文件已经重复了如果去执行文件的时候,发现以下页面,我们只需要把之前的那个run.sh 里面的那个输出的result改成results即可!!

20200928232746831.png

20200928232836775.png

现在我们执行,但是必须在test终端打开

./run.sh

image.png

我们可以在闲暇之余,我们可以看看执行的过程,我们在我们的浏览器里面输入,回车即可

127.0.0.1:0880

也可以查看我们Hadoop的配置以及其他参数

image.png

结果查看

hdfs dfs -ls /st1/results
hdfs dfs -cat /test1/results/文件名

这里的文件名是我们输入第一条命令的时候会出现一个part文件,把这个文件名名字复制粘贴过来即可

20200928234022616.png

最后注意关闭我们的Hadoop机器

stop-all.sh
相关文章
|
19天前
|
分布式计算 资源调度 Hadoop
Hadoop节点资源扩展环境部署
【4月更文挑战第16天】扩展Hadoop集群涉及多个步骤:准备新节点,配置静态IP,安装并配置Hadoop,将新节点添加到集群,验证测试,及优化调整。确保符合硬件需求,更新集群节点列表,执行`hdfs dfsadmin -refreshNodes`命令,检查新节点状态,并依据测试结果优化性能。注意不同环境可能需要调整具体步骤,建议参照官方文档并在测试环境中预演。
25 4
|
29天前
|
存储 分布式计算 Hadoop
Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
【4月更文挑战第3天】Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
42 3
|
29天前
|
存储 分布式计算 监控
Hadoop【基础知识 01+02】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
【4月更文挑战第3天】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
76 2
|
1天前
|
存储 分布式计算 运维
Hadoop的HDFS问题
【5月更文挑战第5天】Hadoop的HDFS问题
10 3
|
25天前
|
存储 分布式计算 Hadoop
[绝对要收藏]配置hadoop完全分布式环境
[绝对要收藏]配置hadoop完全分布式环境
23 0
|
27天前
|
分布式计算 Hadoop 测试技术
Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
【4月更文挑战第5天】Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
46 8
|
27天前
|
分布式计算 资源调度 Hadoop
Hadoop【基础知识 03+04】【Hadoop集群资源管理器yarn】(图片来源于网络)(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第5天】Hadoop【基础知识 03】【Hadoop集群资源管理器yarn】(图片来源于网络)Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
54 9
|
28天前
|
分布式计算 Hadoop Shell
Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第4天】Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
33 5
|
29天前
|
存储 分布式计算 Hadoop
大数据处理架构Hadoop
【4月更文挑战第10天】Hadoop是开源的分布式计算框架,核心包括MapReduce和HDFS,用于海量数据的存储和计算。具备高可靠性、高扩展性、高效率和低成本优势,但存在低延迟访问、小文件存储和多用户写入等问题。运行模式有单机、伪分布式和分布式。NameNode管理文件系统,DataNode存储数据并处理请求。Hadoop为大数据处理提供高效可靠的解决方案。
57 2
|
29天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。

热门文章

最新文章

相关实验场景

更多