前面已经在我的Ubuntu单机上面搭建好了伪分布模式的HBase环境,其中包括了Hadoop的运行环境。
详见我的这篇博文:http://blog.csdn.net/jiyiqinlovexx/article/details/29208703
我的目的主要是学习HBase,下一步打算学习的是将HBase作为Hadoop作业的输入和输出。
但是好像以前在南大上学时学习的Hadoop都忘记得差不多了,所以找到以前上课做的几个实验:wordCount,PageRank以及InversedIndex。
发现以前写的实验报告还是蛮详细的,很容易看懂,恰好以前做实验用的也是hadoop0.20的版本,所以按照我以前写的实验手册直接操作,熟悉一下Hadoop了。
下面是我以前写的WordCOunt的实验报告:
一、实验要求:
实验内容与要求
1. 在Eclipse环境下编写WordCount程序,统计所有除Stop-Word(如a, an, of, in, on, the, this, that,…)外所有出现次数k次以上的单词计数,最后的结果按照词频从高到低排序输出
2. 在集群上运行程序,对莎士比亚文集文档数据进行处理
3. 可自行建立一个Stop-Word列表文件,其中包含部分停词即可,不需要列出全部停词;参数k作为输入参数动态指定(如k=10)
4. 实验结果提交:要求书写一个实验报告,其中包括:
实验设计说明,包括主要设计思路、算法设计、程序和各个类的设计说明
程序运行和实验结果说明和分析
性能、扩展性等方面存在的不足和可能的改进之处
源程序 ,执行程序,停词列表文件
运行结果文件
二、实验报告:
Wordcount词频统计实验
2012年4月1日星期日
19:04
1设计思路
Map:
(1)停词存储
因为停词比较少,所以选择将他们全部存储到内存中,停词不能有重复,还需要快速访问,所以选择hashset来存储
(2)map
对于map传进来的每一行文本,首先用正在表达式将英文标点符号全部题换成空格,然后在循环分析每一个单词,如果这个单词不包括在停词集合中,则将其key设为单词本身,值设置为1,并发射出去。
Reduce:
在reduce中对每一个key,将其所有value累加起来。如果value不小于某个词频,则将其output出去。
2遇到的问题
(1)hadoop API问题
(2)