客户端读写数据到HDFS的流程
客户端写数据到HDFS中的流程
(1) 客户端发出写数据请求,hadoop fs –put ./localFile.txt /hdfsFile.txt 本地的localFile.txt文件大小是170MB,而HDFS默认的Block大小是128MB,因此这个文件将会被分成两个Block
(2) NameNode首先检查这个文件在HDFS中是否存在,如果存在则报错,如果不存在返回OK
(3) 请求写BLOCK1,而hdfsFile.txt有两个Block,且3个副本,那么总共是6个Block
(4) NameNode告诉Client,Block1写到哪几个DataNode中去,例如:返回DataNode1、DataNode2、DataNode3
(5) 与DataNode1建立数据传输连接
(6) DataNode1与DataNode2建立数据传输连接
(7) DataNode2与DataNode3建立数据传输连接
(8) 成功建立,返回OK
(9) 成功建立,返回OK
(10) 成功建立,返回OK
(11) 传输BLOCK1的数据,DataNode1会将BLock1写到本地
(12) 传输Block2的数据与Block1的数据传输过程一样
(13) Block都传输完成之后,NameNode会记录元数据信息:
hdfsFile.txt
Block1 三副本 分别在DataNode1 DataNode2 DataNode3
Block2 三副本 分别在xx xx xx
客户端从HDFS中读数据的过程
(1)读请求,hadoop fs –get /hdfsFile.txt
(2)返回文件的元数据信息,例如文件的Block1 在DataNode1、DataNode2、DataNode3,BLock2在DataNode2、DataNode3、DataNode4
(3)发送读取Block1的请求
(4)数据流返回
(5)发送读取Block2的请求
(6)数据流返回
客户端读写数据到HDFS的流程相关推荐
- 3-39客户端(client)写数据到HDFS的流程
1)客户端向NN提出写数据请求 2)NN发现没有问题,同意客户端写数据 3)由于数据很大,需要分块:BLK1,BLK2三副本存在.此时客户端向NN提出写BLK1请求 4)NN决定将BLK1放在哪几个D ...
- 服务器客户端配置数据与protobuf数据转换流程操作
hs_cp_res.bat ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::@author pdh ::@function ...
- Hadoop之HDFS读写数据流程
Hadoop之HDFS读写数据流程 目录 HDFS写数据流程 HDFS读数据流程 网络拓扑概念 机架感知 1. HDFS写数据流程 HDFS写数据流程,如下图 客户端通过Distributed Fil ...
- 客户端读写hdfs数据
2019独角兽企业重金招聘Python工程师标准>>> 读: (1)客户端通过调用FIleSystem对象的open()方法来打开希望读取的文件,对于hdfs来说,这个对象是分布式文 ...
- HDFS读写数据的原理
目录 1 概述 2 HDFS写数据流程 3 HDFS读数据流程 目录 最近由于要准备面试,就把之前学过的东西好好整理下,权当是复习. 下面说下HDFS读写数据的原理. 1 概述 HDFS集群分为两大角 ...
- Hadoop 2.0x:HDFS写入数据宏观和微观流程
目录 HDFS写数据流程 宏观流程 图解 描述 流程 微观流程 流程 HDFS写数据流程 宏观流程 图解 描述 写数据就是将客户端的数据上传到HDFS 流程 1. 客户端向HDFS发送写数据请求 hd ...
- HDFS源码解析:教你用HDFS客户端写数据
摘要:终于开始了这个很感兴趣但是一直觉得困难重重的源码解析工作,也算是一个好的开端. 本文分享自华为云社区<hdfs源码解析之客户端写数据>,作者: dayu_dls. 在我们客户端写数据 ...
- HDFS读流程,写流程,放置策略
1.HDFS写流程 [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ hdfs dfs -put LICENSE.txt / 19/02/20 21:30:22 WA ...
- 大数据基础——HDFS(分布式文件系统)
分布式文件系统--HDFS 文章目录 分布式文件系统--HDFS HDFS概述 HDFS发展历史 HDFS的设计目标 HDSF应用场景 适合的应用场景 不适合的应用场景 HDFS架构 HDFS的基本原 ...
最新文章
- 操作系统,看这一篇足够了!
- pytorch torch.item()(返回此张量的值作为标准Python数字。 这仅适用于具有一个元素的张量。)
- redis高级-内存淘汰策略
- oracle hr样本模式,Oracle 样本模式 HR
- 我的android学习脚步----------- 的第一个应用
- 易语言linux时间戳转换,易语言unix时间戳转易语言格式源码
- java基于t-io框架实现区块链中的p2p网络构建模拟区块信息同步
- Leetcode 刷题 - 排序(day4)_颜色排序
- 【 优秀的无干扰文本写作工具】Ommwriter for Mac 1.57
- java网络编程--URLEncode和URLDecoder
- 蓄热式加热炉燃烧技术
- 【转】ubuntu下为APT设置代理
- Codeforces 513D2 Constrained Tree
- 《从你的全世界路过》
- 首届中国国际新型储能技术及工程应用大会今日在长沙召开
- 打脸谢尔顿的电池,了解一下
- wincc工程组态论文_WinCC与S7-1500 R/H冗余系统的通信解析
- CSS3 径向(圆形)渐变 (radial-gradient)
- 如何将计算机中的文件添加到桌面,如何将日历添加至电脑桌面中
- linux中ls l wc,linux wc命令有什么用