Hadoop 文档

General

Common

HDFS

MapReduce

MapReduce REST APIs

YARN

YARN REST APIs

YARN Service

Submarine

Hadoop Compatible File Systems

Auth

Tools

Reference

Configuration

HttpFS是一台提供REST HTTP网关的服务器,该网关支持所有HDFS文件系统操作(读取和写入)。并且可以与webhdfs REST HTTP API 互操作。

HttpFS可用于在运行不同版本Hadoop的群集之间传输数据(克服RPC版本问题),例如使用Hadoop DistCP。

HttpFS可用于访问防火墙后面的群集上的HDFS中的数据(HttpFS服务器充当网关,并且是唯一允许将防火墙穿过群集进入群集的系统)。

HttpFS可用于使用HTTP实用程序(例如curl和wget)和来自Java以外的其他语言的HTTP库Perl来访问HDFS中的数据。

所述webhdfs客户文件系统实现可以被用来访问HttpFS使用Hadoop的文件系统命令(hadoop的FS以及从使用Hadoop的文件系统的Java API的Java应用程序)行工具。

HttpFS具有内置的安全性,支持Hadoop伪身份验证和HTTP SPNEGO Kerberos以及其他可插入身份验证机制。它还提供了Hadoop代理用户支持。

HttpFS如何工作?

HttpFS是与Hadoop NameNode分离的单独服务。

HttpFS本身是Java Jetty Web应用程序。

HttpFS HTTP Web服务API调用是映射到HDFS文件系统操作的HTTP REST调用。例如,使用curl Unix命令:

  • $ curl'http:// httpfs-host:14000 / webhdfs / v1 / user / foo / README.txt?op = OPEN&user.name = foo'返回HDFS /user/foo/README.txt文件的内容。

  • $ curl'http:// httpfs-host:14000 / webhdfs / v1 / user / foo?op = LISTSTATUS&user.name = foo'以JSON格式返回HDFS / user / foo目录的内容。

  • $ curl'http:// httpfs-host:14000 / webhdfs / v1 / user / foo?op = GETTRASHROOT&user.name = foo'返回路径/user/foo/.Trash,如果/是加密区域,则返回路径/.Trash/foo。查看有关加密区域中垃圾桶路径的更多详细信息

  • $ curl -X POST'http:// httpfs-host:14000 / webhdfs / v1 / user / foo / bar?op = MKDIRS&user.name = foo'创建HDFS / user / foo / bar目录。

用户和开发人员文档