HTTPFS: 基于HTTP操作hadoop hdfs文件系统

简介:

一、HTTPFS简介

    1:httpfs是cloudera公司提供的一个hadoop hdfs的一个http接口,通过WebHDFS REST API 可以对hdfs进行读写等访问

 
    2:与WebHDFS的区别是不需要客户端可以访问hadoop集群的每一个节点,通过httpfs可以访问放置在防火墙后面的hadoop集群
 
    3:httpfs是一个Web应用,部署在内嵌的tomcat中
 
    用这种方式在数据共享给其他系统时,网络安全上更容易实现,使用请参考:
 

二、启动服务(针对使用cloudera manager安装了CDH4或CDH5) 

    在cm控制台,打开hdfs实例页面,添加httpfs服务,然后启动即可。

三、安装可参考(手工安装)

    http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH4/latest/CDH4-Installation-Guide/cdh4ig_topic_25_8.html    

   http://blog.csdn.net/ganglia/article/details/25902873

四、curl操作命令示例(需要将host替换为实际部署httpfs的服务器IP)

    curl -c ~/.httpsauth "http://host:14000/webhdfs/v1?op=gethomedirectory&user.name=hdfs"

    curl -b ~/.httpsauth "http://host:14000/webhdfs/v1?op=gethomedirectory"

    curl -b ~/.httpsauth "http://host:14000/webhdfs/v1/test/data1.txt?op=OPEN"

    curl -b ~/.httpsauth -X DELETE "http://host:14000/webhdfs/v1/test/data1.txt?op=DELETE"

    创建和追加都是分为两步,测试都没有成功(注意,一定要追加--header参数,否则创建会失败)
    curl -b ~/.httpsauth -i -X PUT "http://172.168.63.221:14000/webhdfs/v1/test2?op=CREATE&buffersize=1000"
    curl -b ~/.httpsauth -i -X PUT -T data2.txt --header "Content-Type: application/octet-stream" "http://172.168.63.221:14000/webhdfs/v1/test2/data.txt?op=CREATE&user.name=hdfs&buffersize=1000&data=true"

五、基于JAVA操作httpfs的开源代码

    开源项目地址,有什么问题可以直接反馈给我

    https://github.com/gitriver/httpfs-client

   说明

   1  包com.catt.httpfs.client.httpclient是采用commons-httpclient.jar,
    基于http请求实现的,没有使用到hadoop相关的jar
    2  包org.apache.hadoop.fs.http.client根据httpfs项目的源代码,
    根据需要修改了一下,使用了hadoop相关的jar

目录
相关文章
|
21天前
|
存储 分布式计算 Hadoop
【Hadoop】HDFS中的块是什么?
【4月更文挑战第9天】【Hadoop】HDFS中的块是什么?
|
19天前
|
存储 分布式计算 Hadoop
Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
【4月更文挑战第3天】Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
36 3
|
19天前
|
存储 分布式计算 监控
Hadoop【基础知识 01+02】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
【4月更文挑战第3天】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
69 2
|
2天前
|
SQL DataWorks Java
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
14 1
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
|
17天前
|
分布式计算 Hadoop 测试技术
Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
【4月更文挑战第5天】Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
41 8
|
17天前
|
分布式计算 资源调度 Hadoop
Hadoop【基础知识 03+04】【Hadoop集群资源管理器yarn】(图片来源于网络)(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第5天】Hadoop【基础知识 03】【Hadoop集群资源管理器yarn】(图片来源于网络)Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
44 9
|
18天前
|
分布式计算 Hadoop Shell
Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第4天】Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
29 5
|
20天前
|
分布式计算 Hadoop
Hadoop【问题记录 01】【hadoop-3.1.3 单机版】【Attempting to operate on hdfs namenode as root】
【4月更文挑战第2天】Hadoop【问题记录 01】【hadoop-3.1.3 单机版】【Attempting to operate on hdfs namenode as root】
11 0
|
分布式计算 应用服务中间件 Docker
Hadoop HDFS分布式文件系统Docker版
一、Hadoop文件系统HDFS 构建单节点的伪分布式HDFS 构建4个节点的HDFS分布式系统 nameNode secondnameNode datanode1 datanode2 其中 datanode2动态节点,在HDFS系统运行时,==动态加入==。
2463 0
|
19天前
|
存储 分布式计算 Hadoop
大数据处理架构Hadoop
【4月更文挑战第10天】Hadoop是开源的分布式计算框架,核心包括MapReduce和HDFS,用于海量数据的存储和计算。具备高可靠性、高扩展性、高效率和低成本优势,但存在低延迟访问、小文件存储和多用户写入等问题。运行模式有单机、伪分布式和分布式。NameNode管理文件系统,DataNode存储数据并处理请求。Hadoop为大数据处理提供高效可靠的解决方案。
46 2