本文记录Hadoop学习过程中通过Java API实现对hdfs的操作
作者为新手小白,只为记录学习&交流
如任何读者有任何正面建议,欢迎留言&私信,不胜感激!
2020年4月2日18:22:31
文章目录
API
API的全称为Application Programming Interface,中文叫应用程序编程接口,是指一些预先定义的函数。
目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
由于Java中“万物皆对象”的性质,我们可以理解为文件系统本身也是一个对象 既然如此我们就可以实例化这个对象完成对hdfs的一些操作
开始
开发环境
OS: Win10
IDE: Intelij IDEA2019.3.3
Hadoop版本: Hadoop-3.1.2
任务描述
通过写Java API完成对hdfs文件的上传和下载操作
上传:put()
public void put() throws IOException, InterruptedException {
Configuration configuration = new Configuration();
FileSystem fileSystem = FileSystem.get(URI.create("hdfs://192.168.253.128:9000"),
configuration, "root");
fileSystem.copyFromLocalFile(new Path("E:\\athadoop\\WordCount\\input\\user_login.txt"),
new Path("/"));
fileSystem.close();
}
下载:get()
public void get() throws IOException, InterruptedException {
Configuration configuration = new Configuration();
FileSystem fileSystem = FileSystem.get(URI.create("hdfs://master:9000"), configuration, "root");
fileSystem.copyToLocalFile(new Path("/output"),new Path("E:\\athadoop\\HDfsClient"));
fileSystem.close();
}