返回顶部
首页 > 资讯 > 精选 >Hadoop中HDFS文件读写流程是怎么样的
  • 313
分享到

Hadoop中HDFS文件读写流程是怎么样的

2023-06-03 00:06:10 313人浏览 薄情痞子
摘要

这篇文章主要介绍了hadoop中hdfs文件读写流程是怎么样的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、文件读流程说明读取操作是对于Cient端是透明操作,感觉是连续

这篇文章主要介绍了hadoophdfs文件读写流程是怎么样的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、文件读流程说明
读取操作是对于Cient端是透明操作,感觉是连续的数据流
Hadoop中HDFS文件读写流程是怎么样的

1、Client 通过FileSystem.open(filePath)方法,去与Namenode进行rpc通信,返回该文件的部分
或全部block列表,也就是返回FSDatainputstream对象;
2、Client调用FSDatainputStream对象的read()方法;
     a. 去与第一个最近的DN进行read,读取完后会check;如果ok会关闭与当前的DN通信;check fail
     会记录失败的block+DN信息下次不会读,然后去读取第二个DN地址
     b. 第二个块最近的DN上进行读取,check后关闭与DN通信
     c. block列表读取完了,文件还没有结束,FileSystem会从NameNode获取下一批的block列表;
3、Client条用FSDatainput对象的close方法,关闭输入流;

总结
         client > filesystem.open()与NameNode进行RPC通信返回get block list
         client > 调用inputstream对象read()方法
            if ok  > 关闭DN通信调用inputstream.close()方法关闭输入流
            if fail  > 记录DN和block信息,向第二个DN去读取最后close();
       block列表read out , file over year > filesystem获取下一批block列表

二、文件写流程说明

Hadoop中HDFS文件读写流程是怎么样的

1、Client调用FileSystem.create(filepath)方法,与NameNode进行RPC通信,check该路径的文件是否存在和是否有创建该文件权限,假如ok就创建一个新文件,但并不关联任何的block,返回一个FSDataOutputStream对象;
2、Client调用FSDataOutputStream对象的write()方法,将第一个块写入第一个DataName,依次传给第二个节点,第三个节点,第三个节点写完返回一个ack packet给第二个节点,第二个节点返回第一个节点,第一个节点返回给ack packet给FSDataOutputstream对象,意味着第一个块写完,副本数为3;后面剩余块依次这样写;
3、文件写入数据完成后,Client调用FSDataOutputStream.close()方法,关闭输出流,刷新缓存区的数据包;
4、最后调用FileSystem.complate()方法,告诉NameNode节点写入成功;

总结:File.System.create()方法 > NameNode  check(qx and exists )
         if ok > 返回 FSDataOutStream对象 | if fail > return error
        client 调用FSDataOutstream.write()方法  >  写入DN,teturn ack packet > FSDataOutStream对象
        client 调用FSDataOutstream.close()方法关闭输出流  >flush缓存
        最后FileSystem.complate() 方法  >  NameNode write ok

感谢你能够认真阅读完这篇文章,希望小编分享的“Hadoop中HDFS文件读写流程是怎么样的”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: Hadoop中HDFS文件读写流程是怎么样的

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

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

猜你喜欢
  • Hadoop中HDFS文件读写流程是怎么样的
    这篇文章主要介绍了Hadoop中HDFS文件读写流程是怎么样的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、文件读流程说明读取操作是对于Cient端是透明操作,感觉是连续...
    99+
    2023-06-03
  • HDFS中读写流程是怎么样的
    这篇文章给大家分享的是有关HDFS中读写流程是怎么样的的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。文件读流程也包含该列表各block的分布在Datanode地址的列表当然读操作对于Client端是透明的,感觉就...
    99+
    2023-06-02
  • HDFS的读写流程是什么
    今天小编给大家分享一下HDFS的读写流程是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.读文件的流程如图所示,读文件...
    99+
    2023-06-27
  • hadoop的读写流程是什么
    Hadoop的读写流程主要分为两部分:HDFS的读写流程和MapReduce的读写流程。 HDFS的读写流程: 写入流程:当客户...
    99+
    2024-03-04
    hadoop
  • HDFS文件读流程的示例分析
    这篇文章主要介绍了HDFS文件读流程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用图来理解:详解HDFS读的过程:1.Client客户端发出请求open到Dist...
    99+
    2023-06-03
  • 如何解析HDFS的写文件流程
    这篇文章给大家分享的是有关如何解析HDFS的写文件流程的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。文件是如何写入HDFS的 ?下面我们来先看看下面的“写”流程图:    ...
    99+
    2023-06-03
  • HDFS文件写流程的示例分析
    小编给大家分享一下HDFS文件写流程的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!图理解:详解HDFS写的过程:1.Client客户端发出请求open到...
    99+
    2023-06-03
  • hadoop配置文件是怎么样的
    这篇文章给大家介绍hadoop配置文件是怎么样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。文件名称                &n...
    99+
    2023-06-03
  • hadoop上传文件到hdfs的方法是什么
    要将文件上传到HDFS,可以使用以下方法: 使用hadoop fs命令: hadoop fs -put <local_fi...
    99+
    2024-04-02
  • java中怎么使用io流读写文件
    在Java中,可以使用IO流来读写文件。下面是一些常见的示例:1. 使用FileInputStream和FileOutputStre...
    99+
    2023-08-26
    java
  • 怎么在Java中使用IO流读写文件
    本篇文章为大家展示了怎么在Java中使用IO流读写文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.读文件public class ReadFromFile { public static...
    99+
    2023-05-31
    java io流 ava
  • Python中怎么读写文件
    Python中怎么读写文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。从文件读取和写入文件是任何编程语言的常见需求。任何文件在读写之前都需要打开。大多数编程语...
    99+
    2023-06-15
  • Java怎么利用缓冲流读写文件
    这篇文章主要介绍“Java怎么利用缓冲流读写文件”,在日常操作中,相信很多人在Java怎么利用缓冲流读写文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java怎么利用缓冲流读写文件”的疑惑有所帮助!接下来...
    99+
    2023-06-20
  • C++中怎么读写文本文件
    C++中怎么读写文本文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C++读写文本文件代码示例如下:#include < iostr...
    99+
    2023-06-17
  • VB.NET中怎么读写文本文件
    本篇文章为大家展示了VB.NET中怎么读写文本文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。为了把text保存到文件,创建一个基于FileStream的StreamReader对象,然后调用Wr...
    99+
    2023-06-17
  • 怎么查看hdfs中的文件
    要查看HDFS中的文件,可以使用以下命令: 列出HDFS中的所有文件和目录: hadoop fs -ls / 查看特定文件或...
    99+
    2024-04-02
  • Java怎么使用字符流读写非文本文件
    今天小编给大家分享一下Java怎么使用字符流读写非文本文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。使用字符流读取文件(...
    99+
    2023-07-06
  • Cassandra的数据写入流程是怎样的
    Cassandra的数据写入流程如下: 客户端应用程序向Cassandra节点发送写请求。 请求首先发送到负责处理数据分片的节点,...
    99+
    2024-04-09
    Cassandra
  • Python中怎么读写配置文件
    Python中怎么读写配置文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python 读写配置文件ConfigParser模块是python自带的读取配置文件的模块.通...
    99+
    2023-06-17
  • c#中ini文件读写的方法是什么
    在C#中,可以使用System.IO命名空间下的StreamReader和StreamWriter类来读写INI文件。以下是一个简单...
    99+
    2024-03-11
    c#
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作