Hadoop执行java版的map-reduce过程及排坑

背景

业余时间开始学习了解hadoop及其生态系统,参考书是《Hadoop权威指南》。现在记录win10下运行java版map-reduce的步骤和遇到的问题

步骤

1、启动hadoop

start-all.cmd

如果遇到问题,参见我的文章win10启动hadoop时遇到的坑

2、直接在idea里执行java代码即可

 

如果要在java console里显示log4j日志,可在src目录下新建resources文件夹,在里面新建lo4j.properties文件

Hadoop执行java版的map-reduce过程及排坑_第1张图片

然后输入以下内容

log4j.rootLogger = debug,stdout

log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

再运行java程序即可

遇到的问题

1、进行文件操作时报错

hdfs://localhost:9000/C:/Users/songzeceng/Desktop/1901 is not a valid DFS filename.

解决方法:给文件路径加上file:\\即可,比如把原来的

FileInputFormat.addInputPath(job, new Path("C:\\Users\\songzeceng\\Desktop\\1901"));

改成

FileInputFormat.addInputPath(job, new Path("file:\\C:\\Users\\songzeceng\\Desktop\\1901"));

 

你可能感兴趣的:(大数据)