在emr中使用httpfs组件

栏目: 服务器 · 发布时间: 7年前

内容简介:httpfs是hadoop中HDFS over HTTP的实现,为HDFS的读写操作提供了统一的REST HTTP接口。在一些特定场景下非常有用,例如不同hadoop版本集群间数据拷贝, 使用httpfs作为对外提供数据访问的网关等。httpfs组件与namenode内置的http接口都能提供webhdfs http接口,但二者不同的是httpfs可以作为独立服务部署到其他节点上,从而与namenode互相独立。在emr V2版本中已经默认在master节点上启动了httpfs组件,无需单独部署和启动,e

httpfs是hadoop中HDFS over HTTP的实现,为HDFS的读写操作提供了统一的REST HTTP接口。在一些特定场景下非常有用,例如不同hadoop版本集群间数据拷贝, 使用httpfs作为对外提供数据访问的网关等。

httpfs组件与namenode内置的http接口都能提供webhdfs http接口,但二者不同的是httpfs可以作为独立服务部署到其他节点上,从而与namenode互相独立。

在emr V2版本中已经默认在master节点上启动了httpfs组件,无需单独部署和启动,emr V1版本或者在非emr节点的客户机中启动方式如下:

su - hadoop
/usr/local/service/hadoop/sbin/httpfs.sh start

emr中默认配置的httpfs端口为4032,启动之后即可通过下面方式进行测试:

$ curl "localhost:4032/webhdfs/v1?user.name=hadoop&op=gethomedirectory"   
{"Path":"\/user\/hadoop"}

通过hdfs客户端进行测试:

$ hdfs dfs -ls webhdfs://localhost:4032/
Found 7 items
drwxr-xr-x   - hadoop supergroup          0 2018-05-25 15:28 webhdfs://localhost:4032/apps
drwxrwx---   - hadoop supergroup          0 2018-05-31 19:06 webhdfs://localhost:4032/emr
drwxr-xr-x   - hadoop supergroup          0 2018-05-29 15:36 webhdfs://localhost:4032/hbase
drwxr-xr-x   - hadoop supergroup          0 2018-06-06 16:49 webhdfs://localhost:4032/spark-history
drwx-wx-wx   - hadoop supergroup          0 2018-05-28 15:09 webhdfs://localhost:4032/tmp
drwxr-xr-x   - hadoop supergroup          0 2018-05-28 15:06 webhdfs://localhost:4032/user
drwxr-xr-x   - hadoop supergroup          0 2018-05-31 19:04 webhdfs://localhost:4032/usr

通过python hdfs模块访问测试:

将测试代码保存至hdfs_t.py, 测试代码如下:

#!/usr/bin/env python

from hdfs import InsecureClient
client = InsecureClient('http://localhost:4032', user='hadoop')

# Read a file
with client.read('/tmp/1.txt') as reader:
    txt = reader.read()
    print txt
# Write a file
data_str =  "test hdfs write"
client.write('/tmp/2.txt', data=data_str, encoding='utf-8')

# Upload a file
client.upload('/tmp/', './testhttpfs', n_threads=5)

执行以下命令安装模块并执行测试脚本:

# 安装模块
yum -y install python-pip
pip install hdfs
# 准备测试文件
date >1.txt
hdfs dfs -put 1.txt /tmp/
# 执行测试脚本
python hdfs_t.py

webhdfs api文档参考链接:

https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/WebHDFS.html


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据压缩导论

数据压缩导论

萨尤得 / 2009-2 / 99.00元

《数据压缩导论(英文版·第3版)》是数据压缩方面的经典著作,介绍了各种类型的压缩模式。书中首先介绍了基本压缩方法(包括无损压缩和有损压缩)中涉及的数学知识,为常见的压缩形式打牢了信息论基础,然后从无损压缩体制开始,依次讲述了霍夫曼编码、算术编码以及字典编码技术等,对于有损压缩,还讨论了使用量化的模式,描述了标量、矢量以及微分编码和分形压缩技术,最后重点介绍了视频加密。《数据压缩导论(英文版·第3版......一起来看看 《数据压缩导论》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具