From 479e1e6cf8987278fa781ebf9e929ce6e4670fe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=86=E9=9B=AA=E6=9D=BE?= Date: Fri, 17 Mar 2023 11:46:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20'Assignment3.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assignment3.md | 67 ++++++++++------------------------------------------------ 1 file changed, 11 insertions(+), 56 deletions(-) diff --git a/Assignment3.md b/Assignment3.md index 686a62e..17a2545 100644 --- a/Assignment3.md +++ b/Assignment3.md @@ -9,13 +9,12 @@ ## 实验内容 - 安装Hadoop集群: `实验步骤  一)` -- 了解并学习简单的Hadoop操作 :`实验步骤  二)  ` -- 安装Hadoop客户端: `实验步骤 三)` -- MapReduce Job `实验步骤 四)` +- 了解并学习简单的Hadoop操作 :`实验步骤  二) ` +- MapReduce Job `实验步骤 三)` ## 实验要求(仔细看) -- 完成所有步骤,并在实验报告([模板下载](file/assignment3/学号-实验三.docx))中完成穿插在本指南中的作业1~作业5(只需要截图)。实验报告上传至https://send2me.cn/DU01VSCj/RAW7UL_NytyFwA +- 完成所有步骤,并在实验报告([模板下载](file/assignment3/学号-实验三.docx))中完成穿插在本指南中的作业1~作业4(只需要截图)。实验报告上传至https://send2me.cn/DU01VSCj/RAW7UL_NytyFwA - 实验报告上传deadline: `3月23日23:59` ## 使用产品 @@ -90,8 +89,7 @@ ​ **查看HDFS状态,节点信息** - 1. su hadoop 切换到hadoop用户 - 2. hdfs dfsadmin -report 查看信息 + hdfs dfsadmin -report 查看信息 @@ -144,7 +142,7 @@ -## `**************作业2:按照如下要求操作命令并截图,并插入实验报告中***************` +## `**************作业2:按照如下要求操作命令并根据3和4的要求截图,并插入实验报告中***************` `作业二要求:` @@ -154,55 +152,12 @@ > > 3. 使用cat命令查看文件内容并截图 `截图中需要包含文件夹信息` (查看的是HDFS文件系统中的info,txt,而不是本地文件系统) > +> 4. 删除info.txt和test文件夹并截图 +> > `操作时注意使用的用户和目录,避免出现permission denied问题` -### 三) 利用安装脚本搭建客户端 - -> 若通过EIP来连接集群,则上述的操作命令我们都是在Hadoop集群上直接操作的,出于安全性考虑,通常我们在单独的机器上安装客户端进行任务提交和相关操作。 - -#### 重装系统 - -**由于实验步骤一中为了连接集群已通过控制台方式搭建了客户端,现将此客户端移除,可通过对云主机重装系统实现。** - -![chongzhuang](img/assignment3/chongzhuang.png) - -#### 配置环境 - -> 我们需要配置云主机的环境,让能够正常访问HDFS文件系统。 - -##### 利用安装脚本部署,可参考[文档](https://docs.ucloud.cn/uhadoop/developer/hadoopdev?id=hadoop%e5%bc%80%e5%8f%91%e6%8c%87%e5%8d%97) - -- 在**hadoop集群的master节点**下载安装脚本: - - ``` - wget "http://udata-new.ufile.ucloud.com.cn/uhadoop/install_uhadoop_client_new.sh" - ``` - - 使用方法: - - 在master节点/root目录下执行 - - ``` - sh /root/install_uhadoop_client_new.sh client_ip client_user password port - client_ip: 客户机IP (申请的UHost) - client_user: 客户机上需要安装客户端的用户名(root) - password: 客户机root密码 - port:客户机ssh连接端口 (通常是22) - ``` - -​ **该脚本会自动安装java环境、hadoop环境,并修改环境变量,安装过程中,需要确认安装(y)**。 - -​ **安装完成后,需要在UHost云主机上执行 source ~/.bashrc 命令让修改的环境生效** - -​ **同样我们可以在该UHost上执行HDFS基础操作** - -## `**************作业3:按照如下要求操作命令并截图,并插入实验报告中***************` - -​ `作业三要求:` - -> 在UHost云主机上删除作业二中创建的文件和文件夹并截图 -### 四)MapReduce Job +### 三)MapReduce Job > MapReduce是一种分布式计算框架 ,以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集。MR有两个阶段组成:Map和Reduce,用户只需实现map()和reduce()两个函数,即可实现分布式计算。在/root/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.5.jar 中有很多简单的MapReduce实例程序。我们可以通过在master节点执行命令 ` hadoop jar /root/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.5.jar` 可以看到可以运行的实例程序。 @@ -229,11 +184,11 @@ hadoop jar /root/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2 hadoop fs -cat /output/part-r-00000 ``` -`**************作业4:统计/root/hadoop-2.6.0/etc/hadoop目录下所有文件的词频并截图,插入实验报告中***************` +## `**************作业3:统计/root/hadoop-2.6.0/etc/hadoop目录下所有文件的词频并截图,插入实验报告中***************` -## `******特别注意,做完作业4 即可请删除UHadoop集群、EIP 和UHost主机等资源******` +## `******特别注意,做完作业3 即可请删除UHadoop集群、EIP 和UHost主机等资源******` #### WordCount 实现原理 @@ -241,7 +196,7 @@ hadoop jar /root/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2 ![image-20201015170801613](img/assignment3/image-20201015170801613.png) -## `**************作业5:用任一语言实现单线程的WordCount,记录运行时间,然后给出运行时间截图,插入实验报告中***************` +## `**************作业4:用任一语言实现单线程的WordCount,记录运行时间,然后给出运行时间截图,插入实验报告中***************` `作业要求`