• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > HDFS读文件解析,

HDFS读文件解析,

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含hdfs 读文件,hdfs文件系统,hdfs上传文件,hdfs创建文件,hdfs文件路径等服务器相关知识,网友希望可以进行参考

HDFS读文件解析,


下图描述了在文件读过程中,client、NameNode和DataNode三者之间是如何互动的。  

1.  client调用get方法得到HDFS文件系统的一个实例(DistributedFileSystem)。然后调用它的open方法。  
2.  DistributedFileSystem通过RPC远程调用NameNode决定文件文件的block的位置信息。对于每一个bolck,NameNode返回block所在的DataNode(包括副本)的地址。DistributedFileSystem返回FSDataInputStream给client用来读数据。FSDataInputStream封装了DFSInputStream用于管理NameNode和DataNode的IO。  
3.  client调用FSDataInputStream的read方法。  
4.  DFSInputStream保存了block块所在的DataNode的地址信息。DFSInputStream连接第一个block的DataNode,read block数据,传回给client。  
5.  当第一个block读完,DFSInputStream关掉与这个DataNode的连接。然后开始第二个block。  
6.  当client读结束,调用FSDataInputStream的close方法。  

在读的过程中,如果client和一个datanode通讯时出错,他会连接副本所在的datanode。这种client直接连接datanode读取数据的设计方法使HDFS可以同时相应很多client的同时并发。因为数据流量均匀的分布在所有的datanode上,NameNode只负责block的位置信息请求。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • HDFS读文件解析,

相关文章

  • 机器学习-统计学习方法概论,学习方法概论
  • 大数据学习笔记1--hadoop简介和入门,学习笔记1--hadoop
  • Hive 合并输入输出文件,
  • 玩转OpenStack网络Neutron(4)--网络隧道技术 VXALN & GRE,openstackvxaln
  • 【Spark1.3官方翻译】 Spark Submit提交应用程序,spark1.3spark
  • hive grouping sets 和 cube 用法,hivegrouping
  • 上海第五次Spark meetup会议资料分享,sparkmeetup
  • 什么是Code Review,CodeReview
  • Docker exec与Docker attach,dockerexecattach
  • Spark MLlib LDA主题模型(1),mlliblda

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Zoho产品经理谈中小企业面临的挑战及应对之策,zoho产品经理
    • nova event机制分析,novaevent机制
    • 开源图计算框架GraphLab介绍,开源图框架graphlab
    • Deploy FAILURE:An app Was not successfully detected by any available buildpack,deploybuildpack
    • Spark中配置Parquet参数,sparkparquet参数
    • Windows上用VAGRANT创建运行管理VirtualBox虚拟机,vagrantvirtualbox
    • hive 日志存放位置修改,hive日志存放位置
    • R720 disable hyperthreading,r720hyperthreading
    • 如何解决Greenplum中无法通过标准命令修复的元数据错误,greenplum元数据
    • HBase数据导入的几种操作,hbase数据导入几种

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有