文章目录
-
- 2. 在Linux本地上执行Java脚本
前段时间老师布置了一个使用 java代码打印hadoop中DataNode里数据
的作业,起初不太熟悉在Linux里Java导包的步骤,来来回回花了很多时间去试错,最后终于弄好了,写篇博客记录一下
我的目标是使用idea远程打印和在Linux中本地打印DataNode里面的数据:
首先我们要知道的是Hadoop其实提供了很多端口供我们访问,我们可以通过特定的端口管理Hadoop中的很多组件,例如NameNode、DataNode、NodeManager等等,具体要看你的配置文件,主要是这两个配置文件
其中就定义了一些默认的管理端口
管理界面:http://localhost:8088
NameNode界面:http://localhost:50070
HDFS NameNode界面:http://localhost:8042
我们也可以访问这些界面对我们的hadoop集群进行管理,我这里访问的是NameNode的管理界面
如果我们想要访问到DataNode里面的数据的话,我们可以访问 9000
端口,这个配置在 core-site.xml
中可以找到
这里我们有两种方式来访问我们的结点数据,远程访问和本地访问
1. 使用idea远程访问
我们先创建一个Maven工程,导入以下依赖(注意要和自己的hadoop版本对应,我的是2版本):
<dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <version>2.1.1</version> </dependency> <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-it</artifactId> <version>1.2.6</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.7.3</version> </dependency> <dependency> <groupId>org.apache.hadoo