云计算课程实验指导与实验报告
二、实验步骤
注意!实验室使用的linux系统分为两个版本,Ubuntu12和ubuntu14
Ubutun12的用户名和密码都是haiming
Ubuntu14的用户名是wan,密码是123
Ubuntu14登陆时需要先输入用户名和密码登陆,然后用startx命令进入图形界面,熟练使用linux的同学可以不用图形界面。
打开home folder,注意,不同版本的linux操作系统打开home folder的图标不同。
打开其中的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新建一个java project
将hadoop-1.0.3.tar.gz解压
在工程名上点右键,选择build path add external archives
选择刚才解压的hadoop目录下的如下jar包
在src上点击右键,选择new class,新建类Wordcount
加入如下代码
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;
public class Wordcount {
public static class TokenizerMapper extends
Mapper
private final static IntWritable one = new IntWritable(1);
最后得到一个jar包,将该jar包复制到linux中hadoop1.0.3的文件夹中(与实验1用到的hadoop-examples-1.0.3.jar路径相同)使用和实验1相同的命令运行自定义的jar包MapReduce简介
本程序数据处理过程
三、实验结果