从wordcount词频统计代码到倒排索引的改编

本文介绍了如何从Hadoop的WordCount例子改编为创建倒排索引的过程。在Mapper阶段,代码修改为输出单词和文件名@偏移量的组合,而在Reducer阶段,处理相同单词的字符串并用分号拼接。最终实现MapReduce程序,用于构建倒排索引。
摘要由CSDN通过智能技术生成

从wordcount词频统计代码到倒排索引的改编
分析word count代码
Map中输出了单词和intwriteable类的对象one,而倒排索引,需要输出单词和文件名@偏移,偏移是key中含有的,使用.tostring方法就可以将它变成字符串与文件名和@连接。要输出文件名,需要导入Fliesplit类,将输入的文件分开,并通过.getname()方法获得文件名。
Reduce中,wordcount输入是单词和intwriteable类的one,输出是单词和sum后的数字。而倒排索引输入是单词和Text类的字符串,并将相同单词的字符串通过“;”拼接起来。
修改后的代码
package wordcount;
//导入必要的package
import java.io.IOException; //报错类
import java.util.Iterator;//迭代器,与string和next有关
import java.util.StringTokenizer; //StringTokenizer类,用于将空白字符作为分割符的类
import org.apache.hadoop.mapreduce.lib.input.FileSplit;//文件分割类,使用它可以获取文件的文件路径等信息。
import org.apache.hadoop.conf.Configuration;//Hadoop中用于读取配置信息的类
import org.apache.hadoop.fs.Path; //有关文件系统输入输出数据的类
import org.apache.hadoop.io.IntWritable; //封装定义了IntWritable类
import org.apache.hadoop.io.Text; //封装定义了Text类
import org.apache.hadoo

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值