编写Java代码打印Hadoop中DataNode中的数据

本文介绍了如何使用Java远程和在Linux本地执行代码来访问Hadoop DataNode中的数据。通过配置Maven工程,导入相应依赖,并解决winutils.exe问题,实现了在IDEA中的远程访问。而在Linux环境下,需要手动导包并使用extClassLoader加载jar,通过编译和运行Java脚本来完成本地访问。
摘要由CSDN通过智能技术生成

文章目录

    • 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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值