Hadoop 云计算实验报告 Hadoop 云计算实验报告 Hadoop 云计算实验报告 Hadoop 云计算实验报告 1 实验目的 在虚拟机Ubuntu 上安装Hadoop 单机模式和集群; 编写一个用Hadoop 处理数据的程序,在单机和集群上运行程序。 2 实验环境 虚拟机:VMware 9 操作系统:ubuntu—12.04—server—x64(服务器版),ubuntu—14.10—desktop—amd64(桌面版) Hadoop 版本:hadoop 1。2.1 Jdk 版本:jdk—7u80—linux-x64 Eclipse 版本:eclipse—jee—luna-SR2—linux-gtk—x86_64 Hadoop 集群:一台namenode 主机master,一台datanode 主机salve, master 主机IP 为10.5。110.223,slave 主机IP 为10.5。110.207。 3 实验设计说明 3 .1 主要设计思路 在ubuntu 操作系统下,安装必要软件和环境搭建,使用eclipse 编写程序代码.实现大数据的统计。本次实验是统计软件代理系统操作人员处理的信息量,即每个操作人员出现的次数。程序设计完成后,在集成环境下运行该程序并查看结果。 3 .2 算法设计 该算法首先将输入文件都包含进来,然后交由map 程序处理,map 程序将输入读入后切出其中的用户名,并标记它的数目为1,形成〈word,1>的形式,然后交由reduce 处理,reduce 将相同key 值(也就是word)的value 值收集起来,形成的形式,之后再将这些1 值加起来,即为用户名出现的个数,最后将这个〈key,value〉对以TextOutputFormat 的形式输出到HDFS 中。 3 .3 程序说明 1) UserNameCountMap 类继承了org。apache.hadoop.mapreduce.Mapper,4 个泛型类型分别是map 函数输入key 的类型,输入value 的类型,输出key 的类型,输出value 的类型。 2) UserNameCountReduce 类继承了org。apache.hadoop.mapreduce。Reducer,4 个泛型类型含义与map 类相同。 3) main 函数通过addInputPath 将数据文件引入该类,在通过setOutputPath 将生成结果转为一个文件,实现生成结果,即统计结果的查看. FileInputFormat。addInputPath(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); 程序具体代码如附件中源程序。 4 实验过程 4 .1 安装实验环境 4 .1.1 安装ubuntu 操作系统 1) 打开VMware,在Home tab 中单击“Create a New Virtual Machine”, 2 ) 选择custom,选择虚拟硬件版本Workstation9.0,选择ios 文件,n...