学习hadoop-远程链接 HDFS,hadoop-链接hdfs
使用javaAPI的方式远程链接HDFS 首先项目进行maven管理 我这边使用的hadoop是2.5.0 进行学习 远程在win上面使用ide开发工具进行链接hadoop首先创建maven工程
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>hadoop-demo</groupId>
<artifactId>hadoop-hdfs-demo</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.5.0</version>
</dependency>
</dependencies>
</project>然后在resources 导入在 hadoop-2.5.0/etc/hadoop/目录下面的 core-site.xml文件和hdfs-site.xml文件 core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.1.129:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/modules/hadoop-2.5.0/data/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>420</value>
</property>
</configuration>hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>创建类
package com.ibeifeng.hadoop.senior.hdfs;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
/**
* HDFS 远程
* @author DavidGHS
*/
public class HdfsApp {
public static void main(String[] args) throws Exception {
//默认加载 core-site.xml core-defult.xml hdfs-site.xml hdfs-defult.xml
Configuration configuration = new Configuration();
//获取文件系统
FileSystem fileSystem = FileSystem.get(configuration);
System.out.println(fileSystem);
}
}
在运行后 正常是可以输出
DFS[DFSClient[clientName=DFSClient_NONMAPREDUCE_2112275376_1, ugi=Administrator (auth:SIMPLE)]]这种参数的
如果输出来那么就是获取了文件系统
如果没有 那么就是可能你的配置文件配置错误希望可以帮助到你
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。