论文实验遇到的问题(hadoop集群+redis集群)

1、MapReduce程序要在主函数中加入如下代码,才可以真正地实现分布式的运行,不然是本地的伪分布式运行:

Searchconf.set("hadoop.job.user","cy");  //设置用户
Searchconf.set("mapred.job.tracker", "localhost:9001");  //jobtracker所在的主机名和端口

这时在hadoop集群上运行的时候可以看到:16/06/16 21:05:36 INFO mapred.JobClient: Running job: job_201606112006_0006(真正分布式运行时)

不然显示的是:16/06/17 10:29:02 INFO mapred.JobClient: Running job: job_local_0001(伪分布式运行时)


2、每次运行完MapReduce程序后,都会生成输出文件夹,再次运行该MapReduce程序时,要手动去删掉该输出文件夹,这样子很麻烦,在MapReduce程序的主函数中加入如下代码就可以实现每次运行的时候自动删除上次生成的输出文件夹:

   /*此块用于处理hdfs中输出文件已存在的问题。判断是否存在,存在则删除。引入import org.apache.hadoop.fs.FileSystem;*/
   FileSystem fs = FileSystem.get(conf);
   if(fs.exists(new Path(args[1]))){
    System.out.println(args[1]+" exist!!!");
    //System.exit(1);
    if(fs.delete(new Path(args[1]))) System.out.println("deleted "+args[1]+"!!!");
   }

3、在MapReduce项目中引入jar包的时候,不要引入不相关的一些jar包,可能会发生jar包冲突

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值