前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【赵渝强老师】HDFS数据上传和下载的过程

【赵渝强老师】HDFS数据上传和下载的过程

原创
作者头像
赵渝强老师
发布2024-08-12 15:41:02
1850
发布2024-08-12 15:41:02
举报
文章被收录于专栏:大数据技术

  在Hadoop的HDFS中客户端的操作请求,无论是上传数据或者下载数据都是由NameNode负责接收和处理。最终将数据按照数据块的形式保存到数据节点DataNode上。下图说明了HDFS数据上传的过程。

  视频讲解如下:

视频内容

  假设需要上传200M大小的一个文件。按照数据块128M的大小为单位进行切块,该文件就会被切分成两个数据块。客户端发出上传命令后,由DistributedFileSystem对象创建一个DFSClient对象,该对象负责与NameNode建立RPC通信,并请求NameNode生成文件的元信息。当NameNode接收到请求后,会生成对应的元信息,如图中的第4步所示。元信息包含了以下的内容:数据块的个数、存储的位置,以及冗余的位置。例如:数据块1将保存到了DataNode1上,同时,对应的两份冗余存储在DataNode2和DataNode3上。NameNode会将生成的元信息返回给DistributedFileSystem对象,并由其创建输出流对象FSDataOutputStream。然后根据生成的元信息上传数据块。例如图中的第7步所示,客户端会将数据块1上传到了DataNode1上,并通过水平复制将其复制到其他的冗余节点上,最终保证数据块冗余度的要求。通过这样的方式,直到所有的数据块上传成功。

  了解到了HDFS数据上传的过程,下图说明了HDFS数据下载的过程。

  视频讲解如下:

视频内容

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档