栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【精】彻底吃透HDFS写流程(2)-- Namenode侧create文件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【精】彻底吃透HDFS写流程(2)-- Namenode侧create文件

有关HDFS写流程的系列文章:
【精】彻底吃透HDFS写流程(1)–BlockConstructionStage

使用HDFS API写数据时,首先先要拿到输出流,然后才可以写数据,获取输出流的方法为:DistributedFileSystem#create。此方法又会调用DFSClient#create。

在DFSClient#create中,调用了DFSOutputStream.newStreamForCreate创建DFSOutputStream输出流对象。newStreamForCreate方法里面做了很多事:

① 调用create RPC申请在Namenode侧创建一个文件,并返回一个HdfsFileStatus对象。
② 把第一步中返回的HdfsFileStatus对象传入DFSOutputStream构造函数中,构造一个DFSOutputStream对象。
③ 启动DFSOutputStream对象中的DataStreamer线程。

本文我们就来看第①步中NameNode侧执行create并返回HdfsFileStatus的逻辑。后续有关DataStreamer的内容再开一篇新的小节讲解。

一、HdfsFileStatus

首先要明确HdfsFileStatus这个接口是干嘛的。一起来看下,Doc里写道:HDFS metadata for an entity in the filesystem。通俗一点来讲,HdfsFileStatus就代表了HDFS中一个INode实体的元数据信息。

HdfsFileStatus是一个接口,其中有个内部类Builder,用于构建HdfsFil

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/658054.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号