Hadoop1.1.2学习笔记(4)
来源:互联网 发布:淘宝儿童摇摆车扭扭车 编辑:程序博客网 时间:2024/06/06 20:41
使用Java API进行Hadoop HDFS操作
获取FileSystem实例,对HDFS的所有操作都使用该实例。
private static FileSystem getFileSystem() throws URISyntaxException,IOException {Configuration conf = new Configuration();URI uri = new URI("hdfs://hadoop2:9000");final FileSystem fileSystem = FileSystem.get(uri , conf);return fileSystem;}首先新建一个hello文件,上传到HDFS上,使用:hadoop fs -put hello / 命令。然后使用下方代码读取打印到控制台
/** * 读取文件,调用fileSystem的open(path) * @throws Exception */private static void readFile() throws Exception {FileSystem fileSystem = getFileSystem();FSDataInputStream openStream = fileSystem.open(new Path("hdfs://hadoop2:9000/hello"));IOUtils.copyBytes(openStream, System.out, 1024, false);IOUtils.closeStream(openStream);}
/** * 创建目录,调用fileSystem的mkdirs(path) * @throws Exception */private static void mkdir() throws Exception {FileSystem fileSystem = getFileSystem();fileSystem.mkdirs(new Path("hdfs://hadoop2:9000/aaa"));}/** * 删除目录,调用fileSystem的deleteOnExit(path) * @throws Exception */private static void rmdir() throws Exception {FileSystem fileSystem = getFileSystem();fileSystem.delete(new Path("hdfs://hadoop2:9000/aaa"));}
/** * 遍历目录,使用FileSystem的listStatus(path) * 如果要查看file状态,使用FileStatus对象 * @throws Exception */private static void list() throws Exception{FileSystem fileSystem = getFileSystem();FileStatus[] listStatus = fileSystem.listStatus(new Path("hdfs://hadoop2:9000/"));for (FileStatus fileStatus : listStatus) {String isDir = fileStatus.isDir()?"目录":"文件";String name = fileStatus.getPath().toString();System.out.println(isDir+" "+name);}}
0 0
- Hadoop1.1.2学习笔记(4)
- Hadoop1.1.2学习笔记(1)
- Hadoop1.1.2学习笔记(2)
- Hadoop1.1.2学习笔记(3)
- Hadoop1.1.2学习笔记(5)
- Hadoop1.x学习笔记
- Hadoop1.0学习笔记之基础
- hadoop1笔记
- Hadoop1.1.2伪分布式安装笔记
- 大数据学习笔记——hadoop1.2.1 MapReduce简介
- Hadoop学习笔记 --- hadoop1.0 与 hadoop 2.0架构图
- 安装hadoop1.0.3笔记
- Hadoop 1.1.2分布式安装过程 (vmware10+centeros5.4 64位+hadoop1.1.2+ securecrt)
- Hadoop1.1.2分布式安装
- hadoop1.1.2分布式部署
- hadoop1.1.2配置文件
- 大数据学习笔记——Hadoop1.x基本概念和安装
- 大数据学习笔记——hadoop1.2.1 eclipse_plugin编译、安装及使用
- 百度Android SDK应用弹错Couldn’t load libBaiduMapSDK_vX_X_X错误解决
- swing右键菜单
- 这只是一个生活的新起点
- SQL数据库链接C#的Application
- cocos2dx3.x 类似 coverflow效果
- Hadoop1.1.2学习笔记(4)
- 把网站由.net4.0降级为.net3.5遇到的500.19错误
- NYOJ--关于521
- 两个链表的合并问题
- 在Linux环境下找到最占用CPU的Java线程
- 理解C语言-06-逻
- javaweb之自定义标签库——转义标签
- 关于java的序列化
- select、poll、epoll之间的区别总结[整理]