iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >HDFS读流程的示例分析
  • 276
分享到

HDFS读流程的示例分析

2023-06-02 01:06:23 276人浏览 安东尼
摘要

这篇文章给大家分享的是有关hdfs读流程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。客户端或者用户通过调用FileSystem对象的Open()方法打开需要读取的文件,这时就是HDSF分布式系统所获取

这篇文章给大家分享的是有关hdfs读流程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

客户端或者用户通过调用FileSystem对象的Open()方法打开需要读取的文件,这时就是HDSF分布式系统所获取的一个对象

  2.FileSystem通过远程协议调用Namenode确定文件的前几个Block的位置,对于每一个block,NameNode返回一个含有Block的元数据信息,接下来DataNode按照上面定义的距离(offSet偏移量)进行排序,如果Client本身即是一个DataNode,那么就会优先从本地DataNode节点读取数据. HDFS完成上面的工作之后返回一个FSDatalnputStream给客户端,让其从FSDatalnputStream中读取。FSDatalnputStream包装了一个类DFSInputStream,用来管理DataNode和NameNode的I/O操作。

  3.NameNode向客户端返回一个包含了数据信息的地址,客户端根据地址创建一个FSDDatalnputStream的对象开始进行数据的读取

  4.FSDatalnputStream根据开始存的前几个Block的DataNode地址,连接到最近DataNode上对数据开始从头读取,客户端会反复调用read()方法,以流的形式读取DataNode这中的数据

  5.当读取到Block的结尾的时候,FSDatalnputStream会关闭当前DataNode的连接然后查找能否读取下一个Block的DataNode位置信息,此时给客户端产生的感觉就是数据是连续读取的,也就说在读取的时候开始查找下一个块所在的地址。读取完成时需要使用close()方法关闭FSDatalnputStream

  HDFS写流程:

  1.Client通过调用FileSystem类的Create()方法请求创建文件

  2.FileSystem通过对NameNode发出远程请求,在NameNode里面创建一个新的文件,但是此时并不关联任何块,NameNode进行很多检查来保证不存在要创建文件已经在系统中,同时检查是否有相当权限来创建文件,如果这些都检查完了,那么NamdNode会记录下这个新文件的信息。FileSystem返回一个FSDatalnputStream给客户端用来写入数据,FSDatalnputStream将包装一个DFsOutputStream用于对DataNode和NameNode的通信,一旦文件创建失败,会给客户端返回一个l0Exception表示文件创建失败并停止任务

  3.客户端开始写数据FSDatalnputStream把要写的数据分成包的形式将其写入到中间队列中,其中的数据有DataStramer来读取,DataStreamer的职责就是让NameNode分配一个新的块通过查找对应DataNode来存数据,来存储的数据会被备份出一个副本,存储到其他节点完成数据写入即可

  4.FSDatalnputStream维护了一个内部关于packets的队列,里面存放着等待被DataNode确认的信息,一旦数据信息写入DataNode成功后,就会从队列中移除

  5.当数据完成写入之后客户会调用close方法,通过NameNode完成写入之前通过一个方法flush将残留数据一起写进去。和NameNode确定写入的位置信息,并返回成功状态。

感谢各位的阅读!关于“HDFS读流程的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: HDFS读流程的示例分析

本文链接: https://www.lsjlt.com/news/228234.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • HDFS读流程的示例分析
    这篇文章给大家分享的是有关HDFS读流程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。客户端或者用户通过调用FileSystem对象的Open()方法打开需要读取的文件,这时就是HDSF分布式系统所获取...
    99+
    2023-06-02
  • HDFS文件读流程的示例分析
    这篇文章主要介绍了HDFS文件读流程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用图来理解:详解HDFS读的过程:1.Client客户端发出请求open到Dist...
    99+
    2023-06-03
  • HDFS读写的示例分析
    这篇文章主要介绍了HDFS读写的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、HDFS读写之前提  NameNode(元数据节点):存放元数据(名称空间、副本数、...
    99+
    2023-06-02
  • HDFS文件写流程的示例分析
    小编给大家分享一下HDFS文件写流程的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!图理解:详解HDFS写的过程:1.Client客户端发出请求open到...
    99+
    2023-06-03
  • HDFS短路读的示例分析
    这篇文章主要介绍HDFS短路读的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景Hadoop的一个重要思想就是移动计算,而不是移动数据。我们更愿意尽可能将计算移动到数据所在节点。因此,HDFS中经常出现客户...
    99+
    2023-06-02
  • hdfs dfsadmin -fetchImage的示例分析
    这篇文章将为大家详细讲解有关hdfs dfsadmin -fetchImage的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、DFSAdmin.java2、TransferFsImage.ja...
    99+
    2023-06-02
  • HDFS中PID示例分析
    这篇文章主要介绍了HDFS中PID示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言:    Linux中可以通过PID找到对相应的进程号和进程目...
    99+
    2023-06-03
  • 分布式文件系统HDFS的示例分析
    小编给大家分享一下分布式文件系统HDFS的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 从RAID说起大数据技术主要要解决的问题的是大规模数据的计算处理问题,那么首先要解决的就是大规模数据的存储问题。大规模数据存...
    99+
    2023-06-19
  • Hadoop体系结构之HDFS的示例分析
    这篇文章将为大家详细讲解有关Hadoop体系结构之HDFS的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。    HDFS采用主从(Master/Slave)结构模型,一个HD...
    99+
    2023-06-03
  • HDFS的读写流程是什么
    今天小编给大家分享一下HDFS的读写流程是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.读文件的流程如图所示,读文件...
    99+
    2023-06-27
  • HDFS中机架感知策略的示例分析
    这篇文章将为大家详细讲解有关HDFS中机架感知策略的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通常来说大型的Hadoop集群是以机架的形式来组织的他们分布在不同的机架上面,同一个机架节点往往通...
    99+
    2023-06-02
  • AngularJS执行流程的示例分析
    这篇文章主要介绍了AngularJS执行流程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一.启动阶段浏览器解析HTML页面,读取...
    99+
    2022-10-19
  • linux启动流程的示例分析
    这篇文章将为大家详细讲解有关linux启动流程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。linux启动流程简介我们都知道,由于linux的稳定性,通常被作为服务器系统,要想称为一个PHP的高...
    99+
    2023-06-09
  • http访问解析流程的示例分析
    这篇文章给大家分享的是有关http访问解析流程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。http访问网址域名解析流程:1、在浏览器中输入www.qq.com域名,操...
    99+
    2022-10-19
  • Javascript柯里化流程的示例分析
    这篇文章将为大家详细讲解有关Javascript柯里化流程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。函数式编程是一种如今比较流行的编程范式,它主张将函数作为...
    99+
    2022-10-19
  • php中PHPCMS流程图的示例分析
    小编给大家分享一下php中PHPCMS流程图的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先要知道PHPCMS这个系...
    99+
    2022-10-19
  • 网站开发流程的示例分析
    这篇文章主要介绍了网站开发流程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、必不可少的准备工作开发网站的目的在于吸引大量的客流量,所以以提高网站的访问量为网站开...
    99+
    2023-06-10
  • Java-IO流的示例分析
    小编给大家分享一下Java-IO流的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言项目结构如下,在使用代码的时候注意修改成你自己的包名和类名一、资源管...
    99+
    2023-06-20
  • PowerManagerService之亮屏流程示例分析
    目录前言Power键亮屏1. 更新 wakefulness1.1 更新 PMS 的 wakefulness1.2 保存用户行为时间1.3 更新 wakefulness 小结2. 更新...
    99+
    2022-11-13
    PowerManagerService 亮屏 PowerManager Service
  • HDFS中读写流程是怎么样的
    这篇文章给大家分享的是有关HDFS中读写流程是怎么样的的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。文件读流程也包含该列表各block的分布在Datanode地址的列表当然读操作对于Client端是透明的,感觉就...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作