Hive进阶(1)----HDFS写入数据流程(赋图助君理解)

HDFS写入数据流程

1.理论流程描述

HDFS(Hadoop分布式文件系统)的数据写入流程是一个复杂但高效的过程,可以分为以下8个步骤:

1、client(客户端)发起文件上传请求;

2、通过发送RPC请求与NameNode建立通讯。NameNode进行检查其中包括:目标文件是否已存在、父目录是否存在、返回是否可以上传;

2、client请求第一个 block该传输到哪些DataNode服务器上;

3、NameNode根据配置文件中指定的备份数量及副本放置策略进行文件分配,返回可用的DataNode的地址,如:Node1,Node2,Node3;

4、 client调用read方法来进行对文档数据的读取。

5、每次从文件中读取一个packet(64k)大小的数据,临时存储在内存之中。

6、将每次读取的packet数据写入到datanode的块中(从block0开始依次往里面存储),直至写满此块。client请求3台DataNode中的一台(假如ND1),上传数据。

7、执行三副本机制,将block中数据分别向另外两台服务器进行存储备份。

8、当第一个块数据写入完成,进入第课块数据写入请求,也就是重新进行第二步操作

2.图形化流程展示

相关推荐
清平乐的技术专栏3 小时前
Hive SQL中COALESCE 函数和NVL()函数、IFNULL函数区别
hive·hadoop·sql
爱吃大芒果3 小时前
Flutter 列表优化:ListView 性能调优与复杂列表实现
开发语言·hive·hadoop·flutter·华为
Yore Yuen3 小时前
Hive内表修改字段类型及注意事项
数据仓库·hive·hadoop
梦里不知身是客113 小时前
yarn向hive提交队列的方式
数据仓库·hive·hadoop
Direction_Wind5 小时前
Iceberg 与 Hive 用法区别
数据仓库·hive·hadoop
本旺5 小时前
【Starrocks + Hive 】BitMap + 物化视图 实战记录
大数据·数据仓库·hive
fvafuc5 小时前
常用odps(hive)语法
数据仓库·hive·hadoop
爱吃大芒果1 天前
Flutter 本地存储方案:SharedPreferences、SQFlite 与 Hive
开发语言·javascript·hive·hadoop·flutter·华为·harmonyos
shjita1 天前
hadoop运行jar包的相关配置参考!
大数据·hadoop·分布式
yumgpkpm1 天前
AI大模型手机的“简单替换陷阱”与Hadoop、Cloudera CDP 7大数据底座的关系探析
大数据·人工智能·hadoop·华为·spark·kafka·cloudera