详解--访问HDFS的几种方式

本文介绍了HDFS的不同访问方式,包括命令行访问、通过HUE进行Web访问及利用HDFS的REST API进行访问。详细探讨了各种访问方式的特点及背后的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


之前简单总结过YARN和HDFS的调用方式汇总,这里针对访问HDFS的方式作更深入的介绍。


命令行访问

hadoop fs -cat /user/hdfs/test_hadoop/data-256M-alone

采用上述命令查看文件时,依据hadoop的文件访问策略,hadoop会将距离该节点最近的备份传输过来。若上述文件的其中一个备份存在dn6上,在dn5上运行如上命令,则dn5和dn6的网络IO会增高,同时dn5的硬盘IO会增大,如下所示:

CDH资源变化图
CDH资源变化图2

注意:若使用命令hadoop fs -ls /hdfs/test_hadoop/data-256M-alone | less查看文件,则此时datanode的运行情形与hue中查看文件的原理类似,见下一小节。唯一的不同点:一旦退出查看(:q),后台传输数据的进程立即停止。


Web访问–HUE

以在HUE中查看文件data-256M-alone为例,总结“HUE中文件访问的处理策略”和“HUE中查看文件时背后的处理流程”。

HUE中文件访问的处理策略:

  • 在Web端查看文件时,HUE并不会请求该文件的所有数据,而是默认只请求该文件第一个块的第一页。如下所示。当用户选择查看其它页时,HUE重新发送传输该页数据的请求。比如,查看第二页时,请求链变为http://lyhadoop5.haohandata.com:8888/filebrowser/view//user/hdfs/test_hadoop/data-256M-alone#p2,参数p2表示第二页。

    hue-文件

HUE中查看文件时背后的处理流程:

  • lyhadoop6(data-256M-alone存储在该节点)中有一部分线程专门负责文件的传输,这些线程总是处于打开状态,暂且将这些线程称为“基本线程”。
  • 在HUE中打开文件后,lyhadoop会新增一个线程,和“基本线程”一起来处理数据的传输。处理过程如下:

    1. “基本线程”和新增线程共同传输数据
      hue查看文件背后原理1

    2. 新增线程关闭, “基本线程”继续传输数据
      hue查看文件背后原理2

    3. “基本线程”停止数据传输,但并不会关闭
      hue查看文件背后原理3

    注:使用命令lsof | grep blk查看数据是否在传输,ls /proc/16756/task查看hdoop处理文件传输的所有线程


Web访问–HDFS的REST API

HDFS的REST分为两种,见关于WebHDFS与HttpFS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值