HDFS数据的读写流程

简介: HDFS数据的读写流程

数据写入流程

image.png

1.客户端向NameNode发起请求

2.NameNode审核权限,剩余空间后,满足条件允许写入,并告知客户端写入的DataNode地址

3.客户端指向指定的DataNade发送数据包

4.被写入数据的DataNode同时完成数据副本的复制工作,将其接受的数据分发给其他DataNode

5.如上,DataNode1复制给DataNode2,然后基于DataNode2复制给DataNode3DataNode4

6.写入完成客户端通知NameNodeNameNode做元数据记录工作

 

 

关键信息点:

NameNode不负责数据写入,只负责元数据记录和权限审批

客户端直接向一台DataNode写数据,这个DataNode一般是离客户端最近(网络距离)的那一个(网络速度快)

数据块副本的复制工作,由DataNode之间自行完成(构造一个PipLine,按顺序复制分发,如图12234

 

 

数据读取流程

image.png

1.客户端向NameNode申请读取某文件

2.NameNode判断服务端权限等细节后,允许读取,并返回此文件的block列表

3.客户端拿到block列表后自行寻找DataNode读取即可

 

关键点:
1.数据同样不通过NameNode提供,NameNode只负责审查

2.NameNode提供的block列表,会基于网络距离计算尽量提供客户端最近的

因为1block3份,会尽量找离客户端最近的那一份让其读取

 

 

1.对于客户端读取DHFS数据的流程中,一定要知道

不论读,还是写,NameNode都不经手数据,均是客户端和DataNode直接通讯不然对NameNode压力大

2.写入和读取的流程,简单来说就是:

NameNode做授权判断(是否能写,是否能读)

客户端直连DataNode进行写入(由DataNode自己完成副本复制),客户端直连DataNode进行block读取

写入,客户端会被分配找自己最近的DataNode写数据

读取,客户端拿到block列表,会是网络距离最近的一份

3.网络距离

最近的距离就是在同一台机器

其次就是同一个局域网(交换机)

再其次就是跨越交换机

再其次就是跨越数据中心

HDFS内置网络距离计算算法,可以通过IP地址,路由表来推断网络距离

 

 

目录
相关文章
|
26天前
|
分布式计算 Hadoop
|
1月前
|
分布式计算 Hadoop 关系型数据库
实时计算 Flink版操作报错合集之Hadoop在将文件写入HDFS时,无法在所有指定的数据节点上进行复制,该如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
2月前
|
存储 分布式计算 Hadoop
Hadoop的HDFS数据均衡
【6月更文挑战第13天】
91 3
|
3月前
|
存储 分布式计算 Hadoop
hadoop节点HDFS数据分片过程
【5月更文挑战第18天】
39 1
|
3月前
|
存储 分布式计算 Hadoop
|
3月前
|
存储 分布式计算 资源调度
|
3月前
|
分布式计算 Java Hadoop
HDFS 集群读写压测
在虚拟机中配置集群时,需设置每台服务器网络为百兆,以模拟实际网络环境。使用Hadoop的`TestDFSIO`进行HDFS性能测试,包括写入和读取数据。写测试中,创建11个128MB文件,平均写入速度为3.86 MB/sec,总处理数据量1408 MB,测试时间137.46秒。资源分配合理,传输速度超过单台服务器理论最大值12.5M/s,说明网络资源已充分利用。读测试主要依赖硬盘传输速率,速度快。测试完成后使用`TestDFSIO -clean`删除测试数据。
|
2月前
|
消息中间件 分布式计算 关系型数据库
使用Apache Spark从MySQL到Kafka再到HDFS的数据转移
使用Apache Spark从MySQL到Kafka再到HDFS的数据转移
|
3月前
|
SQL API 数据处理
实时计算 Flink版产品使用合集之是否可以使用 Iceberg 将数据写入 HDFS
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
3月前
|
存储 分布式计算 Hadoop
【Hadoop】HDFS 读写流程
【4月更文挑战第9天】【Hadoop】HDFS 读写流程

热门文章

最新文章