版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
云计算
第
PAGE
6
页
云计算实验报告
学号:
姓名:
提交日期:
成绩:
实验一
【实验内容】
一、实验目的
在Linux环境下搭建hadoop平台,掌握hadoop平台的搭建流程。
学习使用HDFS,熟悉基本操作指令,学习在hadoop平台下运行程序。
二、实验步骤
注意!实验室使用的linux系统分为两个版本,Ubuntu12和ubuntu14
Ubutun12的用户名和密码都是haiming
Ubuntu14的用户名是wan,密码是123
Ubuntu14登陆时需要先输入用户名和密码登陆,然后用startx命令进入图形界面,熟练使用linux的同学可以不用图形界面。
打开homefolder,注意,不同版本的linux操作系统打开homefolder的图标不同。
打开其中的hadoop文件夹,其中有一个haoop-1.0.3.tar.gz的压缩包。
注意:原路径下有一个解压后的haoop-1.0.3文件夹,大家把这个重命名(加个"_old")
右键点击压缩包,解压到本地,会生成一个hadoop-1.0.3的文件夹
说明:hadoop是基于java环境,必须先安装jdk,本虚拟机的jdk已经安装完毕,本次实验不需要再安装。
打开其中的conf文件夹,hadoop的使用需要对其中的六个文件进行配置
1、修改hdfs-site.xml:HDFS配置文件,该模板的属性继承于core-site.xml
2、修改mapred-site.xml:MapReduce的配置。
3、点击图标启动一个终端,注意,不同系统启动终端的方法不同。
同时按Alt和F2,打开“运行应用程序”对话框,输入:gnome-terminal,之后点右下角的“运行”,就打开终端工具
4、在终端中输入如下命令进行格式化,格式化后会在tmp文件夹中生成目录结构
5、格式化之后输入如下命令来启动hadoop,为简便起见,本次实验略过了ssh安装的过程,因此在启动过程中可能需要输入密码,大家输入登陆密码即可。
6、例子中的wordcount程序,以hdfs中input为输入,建立一个文件夹output为输出,运行中可以通过上边提到的网页观察程序运行进度,也可以从终端观察。
三、实验结果
实验二
一、实验内容
在Eclipse环境下编写一个mapreduce程序,掌握mapredcue编程框架
将Mapreduce程序打包,在hadoop环境下运行程序并观察结果
二、实验步骤
使用eclipse新建一个javaproject
将hadoop-1.0.3.tar.gz解压
在工程名上点右键,选择buildpathaddexternalarchives
选择刚才解压的hadoop目录下的如下jar包
在src上点击右键,选择newclass,新建类Wordcount
加入如下代码
importjava.io.IOException;
importjava.util.StringTokenizer;
importorg.apache.hadoop.conf.Configuration;
importorg.apache.hadoop.fs.Path;
importorg.apache.hadoop.io.IntWritable;
importorg.apache.hadoop.io.Text;
importorg.apache.hadoop.mapreduce.Job;
importorg.apache.hadoop.mapreduce.Mapper;
importorg.apache.hadoop.mapreduce.Reducer;
importorg.apache.hadoop.mapreduce.lib.input.FileInputFormat;
importorg.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
importorg.apache.hadoop.util.GenericOptionsParser;
publicclassWordcount{
publicstaticclassTokenizerMapperextends
Mapper<Object,Text,Text,IntWritable>{
privatefinalstaticIntWritableone=newIntWritable(1);
privateTextword=newText();
publicvoidmap(Objectkey,Textvalue,Contextcontext)
throwsIOException,InterruptedException{
//构造一个用来解析str的StringTokenizer对象。java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。
StringTokenizeritr=newStringTokenizer(value.toString());
//hasMoreTokens()返回是否还有分隔符
while(itr.hasMoreTokens()){
//返回从当前位置到下一个分隔符的字符串
word.set(itr.nextToken());
context.write(word,one);
}
}
}
publicstaticclassIntSumReducerextends
Reducer<Text,IntWritable,Text,IntWritable>{
privateIntWritableresult=newIntWritable();
publicvoidreduce(Textkey,Iterable<IntWritable>values,
Contextcontext)throwsIOException,InterruptedException{
intsum=0;
for(IntWritableval:values){
sum+=val.get();
}
result.set(sum);
context.write(key,result);
}
}
publicstaticvoidmain(String[]args)throwsException{
Configurationconf=newConfiguration();
if(args.length!=2){
System.err.println("Usage:wordcount<in><out>");
System.exit(2);
}
//Job的初始化
Jobjob=newJob(conf,"wordcount");
job.setJarByClass(Wordcount.class);
//然置Job处理的Map(拆分)、Combiner(中间结果合并)以及Reduce(合并)的相关处理类
job.setMapperClass(TokenizerMapper.class);
job.setCombinerClass(IntSumReducer.class);
job.setReducerClass(IntSumReducer.class);
//设置Job输出结果<key,value>的中key和value数据类型
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
//调用setInputPath()和setOutputPath()设置输入输出路径
FileInputFormat.addInputPath(job,newPath(args[0]));
FileOutputFormat.setOutputPath(job,newPath(args[1]));
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度人工智能技术研发个人劳务合同书3篇
- 二零二五年度场项目投标失败原因调查与改进策略合同4篇
- 2025年房屋赠与合同模板
- 2025年分期付款影视制作合同
- 2025年度钢材出口退税代理服务合同样本2篇
- 二零二五年度玻璃隔断安装工程招投标文件编制与审查合同3篇
- 2025年度民宿布草租赁与民宿客栈智能化升级合同4篇
- 2024年度青海省公共营养师之四级营养师押题练习试卷A卷附答案
- 2024年度青海省公共营养师之四级营养师能力检测试卷A卷附答案
- 2024年度青海省公共营养师之三级营养师能力提升试卷A卷附答案
- 2024-2025学年山东省潍坊市高一上册1月期末考试数学检测试题(附解析)
- 江苏省扬州市蒋王小学2023~2024年五年级上学期英语期末试卷(含答案无听力原文无音频)
- 数学-湖南省新高考教学教研联盟(长郡二十校联盟)2024-2025学年2025届高三上学期第一次预热演练试题和答案
- 决胜中层:中层管理者的九项修炼-记录
- 幼儿园人民币启蒙教育方案
- 军事理论(2024年版)学习通超星期末考试答案章节答案2024年
- 《无人机法律法规知识》课件-第1章 民用航空法概述
- 移动商务内容运营(吴洪贵)任务七 裂变传播
- 单级倒立摆系统建模与控制器设计
- 龋病的治疗 深龋的治疗
- 银行卡冻结怎么写申请书
评论
0/150
提交评论