hadoop初级入门学习——hdfs
2013-08-15 11:27
246 查看
通过java API来操作hadoop的hdfs遇到的问题整理
1.两种操作方式的比较
(1)直接通过url地址访问的方式
说明:这种方式发送请求时候,浏览器不认识hdfs协议,无法解析,通过URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());使得url可以被解析。使用这种方式,我们先需要让java识别Hadoop的文件系统的URL方案,就是用URL.setURLStreamHandlerFactory方法,这个方法只能在运行整个jvm中调用一次。
(2)通过api读取配置文件来构造
其中的URI里面的参数是core-site.xml 这个配置文件配置的fs.default.name属性
2.windows下开发遇到的权限不足不允许操作问题
(1)需要把windows的用户名改为root,参见http://www.superwu.cn/2013/08/03/%e4%bf%ae%e6%94%b9%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f%e7%94%a8%e6%88%b7%e5%90%8d/
(2)需要导入org.apache.hadoop.fs.FileUtil包
1.两种操作方式的比较
(1)直接通过url地址访问的方式
public static final String PATH = "hdfs://hadoop:9000/hello/test.txt"; public static void main(String[] args) throws Exception { URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory()); final URL url = new URL(PATH); final InputStream is = url.openStream(); IOUtils.copyBytes(is, System.out, 1024, true); }
说明:这种方式发送请求时候,浏览器不认识hdfs协议,无法解析,通过URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());使得url可以被解析。使用这种方式,我们先需要让java识别Hadoop的文件系统的URL方案,就是用URL.setURLStreamHandlerFactory方法,这个方法只能在运行整个jvm中调用一次。
(2)通过api读取配置文件来构造
public static FileSystem fileSystem() throws Exception{ Configuration conf = new Configuration(); URI uri = new URI("hdfs://hadoop:9000/"); FileSystem fs = FileSystem.get(uri, conf); return fs; }
其中的URI里面的参数是core-site.xml 这个配置文件配置的fs.default.name属性
2.windows下开发遇到的权限不足不允许操作问题
(1)需要把windows的用户名改为root,参见http://www.superwu.cn/2013/08/03/%e4%bf%ae%e6%94%b9%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f%e7%94%a8%e6%88%b7%e5%90%8d/
(2)需要导入org.apache.hadoop.fs.FileUtil包
相关文章推荐
- 【Hadoop入门学习系列之二】HDFS架构和编程
- Hadoop学习笔记—2.不怕故障的海量存储:HDFS基础入门
- <Hadoop实战>学习 -- 基础知识,初级入门
- Hadoop HDFS——Hadoop实战初级部分学习笔记
- Hadoop学习笔记—2.不怕故障的海量存储:HDFS基础入门
- Hadoop学习8_hadoop入门手册4:Hadoop【2.7.1】初级入门之命令:文件系统shell1
- 【Hadoop入门学习系列之五】MapReduce 2.0编程实战
- Hadoop源码学习之HDFS(一)
- Hadoop学习笔记(三) ——HDFS
- hadoop入门手册3:Hadoop【2.7.1】初级入门之命令指南
- Hadoop学习二(java api调用操作HDFS)
- Hadoop学习三(java api 对hdfs常用操作)
- Hadoop学习之java连接HDFS文件系统
- 一脸懵逼加从入门到绝望学习hadoop之 org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.AccessControlException): Permission denied: user=Administrator, access=WRITE, inode="/":root:supergroup:drwxr-xr报错
- hadoop入门十(HDFS基本原理和操作)
- <hadoop学习历程>--笔记心得4-HDFS文件读写流程
- 【从零开始学习Hadoop】--2.HDFS分布式文件系统
- 企业级Hadoop 2.x入门系列之八HDFS和YARN的启动方式
- hadoop 学习(四)之java操作hdfs
- Hadoop学习总结(2)——Hadoop入门详解