博客
关于我
第2.1.3章 hadoop之eclipse远程调试hadoop
阅读量:307 次
发布时间:2019-03-01

本文共 3182 字,大约阅读时间需要 10 分钟。

1 eclipse配置

下载插件,将放到eclipse的plugins目录或者dropins下,重启eclipse
选择Window->Show View->Other->MapReduce Tools->Map/Reduce Locations
Map/reduce配置
配置好后,eclipse可以连接到远程的DFS
dfs
2 windows配置
选择Window->Prefrences->Hadoop Map/Reduce,配置本地的hadoop,但是本地hadoop默认即可,不需要调整。
这里写图片描述
配置环境变量
1

将winutils.exe复制到本地hadoop的$HADOOP_HOME\bin目录

将hadoop.dll复制到%windir%\System32目录
winutils.exe和hadoop.dll的获取,您可以从csdn上下载,也可以自行在hadoop-common-project\hadoop-common\src\main\winutils编译那个.net工程
环境变量配置
1
2
3 wordcount示例的运行
创建maven工程,不赘述,在pom.xml中引入hadoop的jar。

2.6.4
org.apache.hadoop
hadoop-common
${ hadoop.version}
org.apache.hadoop
hadoop-hdfs
${ hadoop.version}
org.apache.hadoop
hadoop-client
${ hadoop.version}

将core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml拷贝到src/main/resources

将源码中的WordCount导入到工程中,编译Export出jar到其他的文件夹中,为方便测试命名为testWordCount.jar
然后修改工程的main代码,添加下图红色部分内容
main
配置Run Configurations,在Arguments中添加参数
第一行hdfs://192.168.5.174:9000/user/hadoop/testdata/test.log是输入文件
第二行hdfs://192.168.5.174:9000/user/hadoop/testdata/output2是输出目录
hadoop 参数配置
test.log的内容可通过以下代码写入

import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataOutputStream;import org.apache.hadoop.fs.FileStatus;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IOUtils;import org.junit.Test;public class TestHdfs {   	@Test	public void test_hdfs(){   		String uri = "hdfs://192.168.5.174:9000/";		Configuration config = new Configuration(); 		try {   			FileSystem fs = FileSystem.get(URI.create(uri), config);			//			FileStatus[] statuses = fs.listStatus(new Path("/user/hadoop/testdata"));			for (FileStatus status:statuses){   				System.out.println(status);			}			//									FSDataOutputStream os = fs.create(new Path("/user/hadoop/testdata/test.log"));			os.write(readFile());			os.flush();			os.close();			//			InputStream is = fs.open(new Path("/user/hadoop/testdata/test.log")); 			IOUtils.copyBytes(is, System.out, 1024, true);  		} catch (IOException e) {   			e.printStackTrace();		}  			}		private byte[] readFile(){   		File file = new File("F:/阿里云/174/hadoop-hadoop-namenode-dashuju174.log");		StringBuffer text = new StringBuffer();		try {   			InputStreamReader read = new  InputStreamReader(new FileInputStream(file),"UTF-8");			String lineTxt = null;			BufferedReader bufferedReader = new BufferedReader(read);            while((lineTxt = bufferedReader.readLine()) != null){                   text.append(lineTxt).append("\n");            }            read.close();		} catch (UnsupportedEncodingException | FileNotFoundException e) {   			e.printStackTrace();		} catch (IOException e) {   			// TODO Auto-generated catch block			e.printStackTrace();		}		return text.toString().getBytes();	}}

运行后结果

hadoop运行结果

你可能感兴趣的文章
Nginx:现代Web服务器的瑞士军刀 | 文章末尾送典藏书籍
查看>>
ngModelController
查看>>
ngnix配置文件
查看>>
ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
查看>>
ngrok内网穿透可以实现资源共享吗?快解析更加简洁
查看>>
ngrok内网穿透可以实现资源共享吗?快解析更加简洁
查看>>
NHibernate动态添加表
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
Nhibernate的第一个实例
查看>>
NHibernate示例
查看>>
nid修改oracle11gR2数据库名
查看>>
NIFI1.21.0/NIFI1.22.0/NIFI1.24.0/NIFI1.26.0_2024-06-11最新版本安装_采用HTTP方式_搭建集群_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0_java.net.SocketException:_Too many open files 打开的文件太多_实际操作---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_插入时如果目标表中已存在该数据则自动改为更新数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0058
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_更新时如果目标表中不存在记录就改为插入数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0059
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0_Postgresql和Mysql同时指定库_指定多表_全量同步到Mysql数据库以及Hbase数据库中---大数据之Nifi工作笔记0060
查看>>
NIFI1.21.0最新版本安装_连接phoenix_单机版_Https登录_什么都没改换了最新版本的NIFI可以连接了_气人_实现插入数据到Hbase_实际操作---大数据之Nifi工作笔记0050
查看>>