Hoop是对Hadoop HDFS Proxy 的改良重写,为HadoopHDFS提供了HTTP(S)的访问接口。使用Hoop,你可以:
- 通过标准的HTTP协议访问你的HDFS系统
- 在运行不同版本的HDFS之间进行数据交换(这克服了一些RPC方式因版本不同而产生的兼容性问题)
- 将对HDFS的操作置于防火墙的保护下。Hoop Server在系统中可以充当网关的角色,并且只允许本系统穿越。
组件
Hoop由两部分组成:Hoop Server 和 Hoop Client,他们分别作用是:
- Hoop Server是一个提供REST HTTP协议的服务,它允许你通过HTTP协议进行所有HDFS支持的文件系统的操作。
- Hoop Client是一个HDFS的客户端实现,使用它你可以使用通常的HDFS的操作方法来通过Hoop操作HDFS。
例子
下面是几个使用传统的CURL工具通过Hoop操作HDFS的例子:
1.获取home目录
$ curl -i "http://hoopbar:14000?op=homedir&user.name=babu"
HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
{"homeDir":"http:\/\/hoopbar:14000\/user\/babu"}
$
2.读取一个文件内容
$ curl -i "http://hoopbar:14000?/user/babu/hello.txt&user.name=babu"
HTTP/1.1 200 OK
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Hello World!
$
3.写文件
$ curl -i -X POST "http://hoopbar:14000/user/babu/data.txt?op=create" --data-binary @mydata.txt --header "content-type: application/octet-stream"
HTTP/1.1 200 OK
Location: http://hoopbar:14000/user/babu/data.txt
Content-Type: application/json
Content-Length: 0
$
4.列出目录的内容
$ curl -i "http://hoopbar:14000?/user/babu?op=list&user.name=babu"
HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
[
{
"path" : "http:\/\/hoopbar:14000\/user\/babu\/data.txt"
"isDir" : false,
"len" : 966,
"owner" : "babu",
"group" : "supergroup",
"permission" : "-rw-r--r--",
"accessTime" : 1310671662423,
"modificationTime" : 1310671662423,
"blockSize" : 67108864,
"replication" : 3
}
]
$
更多操作可以看这里:Hoop HTTP REST API
获取Hoop
Hoop使用的是Apache License 2.0 发布,你可以在github上获取到它的源码(http://github.com/cloudera/hoop)这里(http://cloudera.github.com/hoop.)还有各种相关的安装使用教程。
来源:http://www.nosqlwiki.com/7-hoophadoop-hdfs-over-http
分享到:
相关推荐
4. “Hoop - Hoop, Hadoop HDFS over HTTP 0.1.0-SNAPSHOT - HTTP REST API_files” 和 “Hoop:Hadoop HDFS的RESTFul封装 - NoSQLFan - 关注NoSQL相关技术、新闻_files”:这些文件可能是与上述文档相关的辅助资料...
3. Hadoop数据存储:Hadoop提供了两种数据存储方式:HDFS和HBase。掌握HDFS和HBase的基础知识是开发Hadoop应用程序所需的。 三、高级实践 1. MapReduce编程:MapReduce是一个编程模型,能够处理大规模数据的处理和...
带箍最终 HulaHoop 代码(Sparkfun Pro Micro + LPD8806) 感谢 Philihp 提供的基本代码和说明: ://philihp.com/blog/2011/diy-led-hula-hoop/ 我只是将代码修改为: 使用arduino的内置上拉电阻添加效果添加颜色我...
Hoop是一个简单的应用程序,可帮助您考虑每天照顾自己。 屏幕截图: 使用的技术: HTML CSS Node.js 表示 React 物化 入门: Heroku => Trello板=> ERD => [ERD]( 线框=> 下一步: 重构健康评分指标。 ...
下图显示了改进的Ball and Hoop模型。 除了经典的阻尼振荡任务外,它还允许执行一些更具挑战性的任务,例如Loop The Loop任务。 有关更多详细信息,请参见我们的论文,其中详细描述了两个此类任务[1]。 请记住,该...
Hadoop 的设计目标是让用户能够在不深入理解分布式系统的底层细节情况下,轻松地编写并运行分布式应用程序。 **Hadoop Distributed File System (HDFS)** HDFS 是 Hadoop 的基石,它是一个高度容错性的分布式文件...
Hadoop之所以能够成为大数据领域的核心组件之一,得益于其两个核心组成部分——**Hadoop Distributed File System (HDFS)** 和 **MapReduce**。 #### 二、Hadoop生态系统关键组件 - **HDFS (Hadoop Distributed ...
hoop-distro-0.1.0-SNAPSHOT.jar hdfs 的http web 控制台 hoop的东西 你们懂得 我花了好久才编译成功的 所以希望大家能给点辛苦分
### 环向应力(Hoop Stress):理论与应用 #### 概述 环向应力,也称为圆周应力或箍应力,在机械工程领域是一个关键概念,它指的是作用于物体上的沿圆周方向(即垂直于物体轴线且沿着其周界的方向)的应力。在很多...
【标题】:“hoop API 加速 ACE 定时器” 在计算机编程中,尤其是在实时系统或者游戏开发领域,高效的定时器管理是至关重要的。ACE(Adaptive Communication Environment)是一个跨平台的C++库,提供了丰富的网络...
[成都]某城山地别墅规划及建筑方案文本(HOOP 美国某设计院设计) 总用地面积:217258m2 总建筑面积:261152m2 住宅面积:250329m2 会所面积:1363m2 商业面积:7245m2 幼儿园面积:2215m2 容积率:1.2 建筑密度:28% ...
标题 "hoop-boop:亲人可以分享的应用程序标记了他们一起创造回忆的地点" 提示我们这是一款专注于家庭回忆分享的应用。它可能结合了地图定位、照片上传和社交功能,让家人能共同记录和回顾他们在特定地点的美好时光。...
Dunk Hoop 2 扣篮2 支持Unity版本5.6.6f2及以上 描述 移动篮圈并制作完美的 Swish Chaine!令人上瘾的 Swish Up 是一种全新的创新篮球游戏概念。 特征 • 上手容易,精通难 • 多种球型 • 无尽的游戏和关卡模式游戏...
7. hoop:篮筐 - 篮球比赛中的目标,球员需将球投入篮筐得分。 8. court:球场 - 运动比赛的场地,如篮球场、网球场等。 9. slam dunk:扣篮 - 篮球中的一种强力得分方式,球员跃起并将球猛烈扣入篮筐。 10. ...
旅游规划-宜春仰山国际温泉禅修中心-HOOP171页.pdf
Hoop Smash 200 Levels 篮筐粉碎200关Unity粉碎圆圈的游戏项目源码C# 描述 Hoop Smash 200 Levels 是一款非常有趣且令人满意的一键街机游戏!点击以用球击打地板并瞄准薄弱区域。您一次打破的篮圈越多,您获得的积分...
。。。
为示例index.js创建一个.js文件index.js const Hoop = require ( 'hoopdb' )const path = require ( 'path' )let db = new Hoop ( path . join ( __dirname , "db" ) )async function main ( ){ await db . connect ...
- basketball hoop: 篮筐,篮球运动的目标。 - curtain: 窗帘,遮挡窗户的布艺装饰。 - garage: 车房,停放汽车的建筑物。 - porch: 入口处,房屋前的平台。 - driveway: 车库通向马路的空地,供车辆行驶。 - ...
Matlab GUI退出代码篮球射手9000 41013机器人-作业2 贡献者: 托马斯·哈里森(12876785) 普拉纳夫·辛哈尔(12988414) 概述 该项目旨在使用KUKA LBRIIWAR800在篮筐旁投篮。 所有代码均基于MATLAB。...