eclipse 对 hadoop1.2.1 hdfs 文件操作
package com.hdfs;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.URI;
import java.nio.file.Files;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
public class HDFSUtils {
private static final String HDFS_PATH = "hdfs://test1:9000/opt/hadoop-1.2.1/fff/hadooptest.txt";
private static final String HDFS_File_PATH = "hdfs://test1:9000";
private static final String ADD_DIR_PATH = "/firstdir";
private static final String UPLOAD_DIR_PATH = "/firstdir/firstfile";
public static void main(String[] args) throws Exception {
// //读取文件内容
// //将hdfs协议转换成http协议
// URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());
// final URL url = new URL(HDFS_PATH);
// final InputStream in = url.openStream();
// /**
// * 读取文件内容
// * @param in 输入流
// * @param out 输出流
// * @param buffsize 缓冲区大小
// * @param close 是否关闭流
// */
// IOUtils.copyBytes(in, System.out, 1024, true);
//获取hdfs文件类
final FileSystem fileSystem = FileSystem.get(new URI(HDFS_File_PATH), new Configuration());
//创建文件夹
// mkdir(fileSystem);
//上传文件
// upload(fileSystem);
//下载文件
// download(fileSystem);
//删除文件
// deleteFile(fileSystem);
}
/**
* @param fileSystem
* @throws IOException
*/
private static void deleteFile(final FileSystem fileSystem)
throws IOException {
fileSystem.delete(new Path(UPLOAD_DIR_PATH), true);
}
/**
* @param fileSystem
* @throws IOException
*/
private static void download(final FileSystem fileSystem)
throws IOException {
FSDataInputStream in = fileSystem.open(new Path(UPLOAD_DIR_PATH));
IOUtils.copyBytes(in, System.out, 1024, true);
}
/**
* @param fileSystem
* @throws IOException
* @throws FileNotFoundException
*/
private static void upload(final FileSystem fileSystem) throws IOException,
FileNotFoundException {
FSDataOutputStream out = fileSystem.create(new Path(UPLOAD_DIR_PATH));
FileInputStream in = new FileInputStream("e:/log.txt");
IOUtils.copyBytes(in, out, 1024, true);
}
/**
* @param fileSystem
* @throws IOException
*/
private static void mkdir(final FileSystem fileSystem) throws IOException {
fileSystem.mkdirs(new Path(ADD_DIR_PATH));
}
}
eclipse 对 hadoop1.2.1 hdfs 文件操作的更多相关文章
- Hadoop之HDFS文件操作常有两种方式(转载)
摘要:Hadoop之HDFS文件操作常有两种方式,命令行方式和JavaAPI方式.本文介绍如何利用这两种方式对HDFS文件进行操作. 关键词:HDFS文件 命令行 Java API HD ...
- hadoop的hdfs文件操作实现上传文件到hdfs
这篇文章主要介绍了使用hadoop的API对HDFS上的文件访问,其中包括上传文件到HDFS上.从HDFS上下载文件和删除HDFS上的文件,需要的朋友可以参考下hdfs文件操作操作示例,包括上传文件到 ...
- HDFS文件操作(命令行)
HDFS是一种分布式文件系统,为MapReduce这种框架下的海量数据分布式处理而设计. Hadoop之HDFS文件操作常有两种方式,一种是命令行方式,即Hadoop提供了一套与Linux文件命令类似 ...
- Hadoop之HDFS文件操作
摘要:Hadoop之HDFS文件操作常有两种方式.命令行方式和JavaAPI方式.本文介绍怎样利用这两种方式对HDFS文件进行操作. 关键词:HDFS文件 命令行 Java API HD ...
- JAVA API 实现hdfs文件操作
java api 实现hdfs 文件操作会出现错误提示: Permission denied: user=hp, access=WRITE, inode="/":hdfs:supe ...
- HDFS文件操作
hadoop装好后,文件系统中没有任何目录与文件 1. 创建文件夹 hadoop fs -mkdir -p /hkx/learn 参数-p表示递归创建文件夹 2. 浏览文件 hadoop fs -ls ...
- Hadoop HDFS文件操作
1.创建目录 import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.ha ...
- thrift实现HDFS文件操作
thrift 文件如下 namespace java com.pera.file.transform struct File{ 1:string path , 2:string co ...
- eclipse hadoop环境搭建 查看HDFS文件内容
1.下载插件 hadoop-eclipse-plugin-2.5.2.jar放入eclipse/plugin 2.准备hadoop-2.5.0-cdh5.3.6 使用WinSCP远程连接虚拟机,复制h ...
随机推荐
- laravel发布订阅
1.php artisan make:command RedisSubscribe 在app console中会生成RedisSubscribe.php文件 <?php namespace Ap ...
- Linux是cat、tail、head查看文件任意几行的数据
Linux是cat.tail.head查看文件任意几行的数据 一.使用cat.tail.head组合 1.查看最后100行的数据 cat filename | tail -n 100 2.查看100到 ...
- SpringBoot-将servlet容器变成undertow测试tomcat吞吐量
将Servlet容器变成Undertow 默认情况下,Spring Boot 使用 Tomcat 来作为内嵌的 Servlet 容器 可以将 Web 服务器切换到 Undertow 来提高应用性能.U ...
- ELK基础原理
搜索引擎 索引组件: 获取数据-->建立文档-->文档分析-->文档索引(倒排索引) 搜索组件: 用户搜索接口-->建立查询(将用户键入的信息转换为可处理的查询对象) ...
- Centos7下安装Docker(详细的新手装逼教程)
早就听说过Docker,一直不清楚是个啥,今天捣鼓了一下,这里做个记录. --------------------------------------------------------------- ...
- python 中为什么不需要重载 参数*arg和**args
函数重载主要是为了解决两个问题. (1)可变参数类型. (2) 可变参数个数. 另外,一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两 ...
- rosetta geometric constraint file(用于match和design)
cst(constraint file)文件示例: CST::BEGIN TEMPLATE:: ATOM_MAP: atom_name: C6 O4 O2 TEMPLATE:: ATOM_MAP: r ...
- OAuth2认证和授权:AuthorizationCode认证
前面的OAuth2认证,里面的授权服务器都是用的identityserver4搭建的 ids4没有之前一般都是Owin搭建授权服务器,博客园有很多 ids4出来后,一般都是用ids4来做认证和授权了, ...
- centos----------centos下如何安装phpstorm
1.首先打开centos下的谷歌浏览器,找到phpstorm官网下载linux版本.PhpStorm-2016.3.2.tar.gz 2.然后gunzip PhpStorm-2016.3.2.tar. ...
- sublime-text3按tab跳出括号
功能 通过按tab自动跳过右括号,右引号,虽然也可以按右方向键,但离得太远按起来太麻烦 在首选项->按键绑定里添加: { "keys": ["tab"], ...