HDFS的接口(命令行接口和Java接口)--笔记
HDFS 文件的系统访问的接口
1.Hadoop的shell命令脚本
hadoop fs -ls 列出某一个目录下的文件
hadoop fs -lsr 递归的方式列出所有文件
hadoop fs -mkdir 创建目录
hadoop fs -rm 删除文件或者目录
hadoop fs -rmr 删除目录及目录下的所有目录或者文件
hadoop fs -put src / 向hdfs上传文件
hadoop fs -copyFromLocal /src /
hadoop fs -get /hdfs
hadoop fs -copyToLocal 从hdfs拷贝到本地文件系统
2.hdfs第二种访问接口 Java接口 JavaAPI
1) 通过URL的方式去访问
static{
URL.setFsUrlStreamHandler(new FSUrlStreamHandlerFactory());
}
try{
//使得URL具备访问HDFS的工厂能力
//通过URL统一资源定位符,具体的定位到hdfs的某一个具体的资源文件上
URL url = new URL("hdfs://master:9000/a.txt");
//通过url的 openStream方法拿到目标hdfs上文件的输入流对象
FSDataInputStream in = url.openStream();
FileOutputStream foo = new FileOutputStream("/home/zkpk/a.txt");
IOUtils.copyBytes(in, foo, 4096, false);
}catch(Exception e){
}finally{
IOUtils.closeStream(in);
}
2) FileSystem 来操作hdfs(常用)
Object obj = FileSystem.get()
Object extends FileSystem{
}
Object obj = new Object();
FileSystem fs;
fs = obj; //把子类对象看成父类对象,向上转型
//获取hdfs的配置 configuration
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
fs = FileSystem.get(URI.create(uri), conf);
InputStream in = fs.openStream();
IOUtils.copyBytes(in, System.out, 4096, false);
3) FileStatus (文件的元信息, 文件的名字,路径 is目录......)
FileStatu[] list = fs.listStatus();
Path[] paths = FileUtils.status2path(list)
for(Path p : paths){
fs = FileSystem.get(RUI.create(p), conf);
fs.openStream();
}
4)fs.delete
fs.mkdir()
HDFS的接口(命令行接口和Java接口)--笔记的更多相关文章
- 使用SWIG将C++接口转换成Java接口
PS:此文章仅作为个人记录使用,代码属于私密,故无法公开: 以C++类classifier为例,文件保存于百度网盘 https://pan.baidu.com/s/1c2AwhaS(需密码) 系统:U ...
- 接口和包--Java学习笔记
接口 定义及基础用法 interface定义:没有字段的抽象类 interface person{ void hello(); String getName(); } /*接口本质上就是抽象类 abs ...
- 【Hadoop】四、HDFS的java接口
Hadoop是用java语言实现的,因此HDFS有很好的java接口用以编程,重点就是Hadoop的FileSystem类,它是所有文件系统的抽象类,HDFS实例(DistributedFileS ...
- 【Java学习笔记之二十二】解析接口在Java继承中的用法及实例分析
一.定义 Java接口(Interface),是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为( ...
- JAVA学习笔记(3)—— 抽象类与接口
1. Java 抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类. 抽象类 ...
- java接口
一.定义 Java接口(Interface),是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为( ...
- Java 接口基础详解
目录 Java接口示例 实现一个接口 接口实例 实现多个接口 方法签名重叠 接口变量 接口方法 接口默认方法 接口与继承 继承与默认方法 接口与多态性 在Java中,接口是一个抽象类型,有点类似于类, ...
- 我对面向对象设计的理解——Java接口和Java抽象类
在没有好好地研习面向对象设计的设计模式之前,我对Java接口和Java抽象类的认识还是很模糊,很不可理解. 刚学Java语言时,就很难理解为什么要有接口这个概念,虽说是可以实现所谓的多继承,可一个只有 ...
- Eclipse 创建 Java 接口
打开新建 Java 接口向导 新建 Java 接口向导可以创建新的 Java 接口.打开向导的方式有: 点击 File 菜单并选择 New > Interface 在 Package Explo ...
随机推荐
- 西邮linux兴趣小组2014纳新免试题(三)
[第三关] 题目 http://sortsth.sinaapp.com/ 分析 查看网页源码,得知题目让找出6种排序算法,每次刷新或提交序列都变化. 15种算法清单: CountingSort ...
- 翻译:MariaDB wait/nowait
本文为mariadb官方手册:wait/nowait的译文.原文:https://mariadb.com/kb/en/library/wait-and-nowait/ 从MariaDB 10.3.0开 ...
- java GUI编程二
java基础学习总结--GUI编程(二) 一.事件监听 测试代码一: 1 package cn.javastudy.summary; 2 3 import java.awt.*; 4 import j ...
- JS之脚本延迟
自从开了博客,我就一下班回来匆匆吃完饭门一关等一开电脑一打开匆匆的研究东西,以至于朋友们都怀疑我是不是都得了自闭症 其实因为我有恐惧心理怕自己的技术哪天跟不上社会了,说到技术我觉得技术不求越新越好,但 ...
- Shell 变量详解教程之位置变量与预定义变量。
Shell 变量分为3部分,分别是用户自定义变量.位置变量和预定义变量. 一. 自定义变量 那么,什么是变量呢?简单的说,就是让某一个特定字符串代表不固定的内容,用户定义的变量是最普通的Shell ...
- SpringMVC的一点理解
1.MVC(Model-View-Controller) 用慕课网上的一个图来看看MVC Front Controller(前端控制器):把客户的请求分发给不同的控制器去生成业务数据,将生成的业务数据 ...
- Saturday SQL Server 2016 初体验
最近在开发一个有关数据库的项目,我想用SQLite,但是SQLite的设计器不是特别友好,然后据说VS有一个集成的SQLite设计器,但是我用的VS2017亲测并没有,用户体验不佳,所以安装一个SQL ...
- VB.NET 打开窗体后关闭自己
第一:要实例化打开的窗体 Dim bb As New frm_Main 第二:打开窗体 show 第三:释放自身 Finalize() '赋值另一窗体的控件值,先实例化,再进行操作 Dim bb ...
- python之字典
1.用{}创建字典 代码: 1 2 x = {"a":"1", "b":"2"} print x 输出: {'a': ' ...
- [置顶]
一个demo学会css
全栈工程师开发手册 (作者:栾鹏) 一个demo学会css css选择器全解 css操作语法全解 学习了css权威指南这本书,自己喜欢边学边总结边写demo,所以写了这篇文章,包含了大部分的css编程 ...