什么是“hdfs写管道”?

4smxwvx5  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(572)

当我阅读hadoop权威指南时,我停留在下面sentence:-
写入reduce输出确实会消耗网络带宽,但仅与普通hdfs写入管道消耗的带宽相同。
问题:1。有人能帮我更详细地理解上面的句子吗。2“hdfs写管道”是什么意思?

mzsu5hc0

mzsu5hc01#

可以理解为follows:-

  • datapipeline正在向数据节点写入数据,要写入的数据节点数由复制因子决定,默认为3。
  • 因为reduce输出将存储在3个不同的节点上,这是由数据管道决定的。因此,网络消耗将等于用数据写入的数据管道。
  • 我们可以通过下面的图表了解到同样的情况,hdfs客户机从nn获取数据管道的位置,并通过其中涉及的握手过程向其写入数据(握手过程在这里稍微复杂一些,我们将不详细介绍它)。顺便说一句,图表取自cloudera的站点

qjp7pelc

qjp7pelc2#

当文件写入hdfs时,许多事情都在幕后进行,与hdfs块一致性和复制有关。到目前为止,这个过程的主要io组件是复制。还有与名称节点的双向通信,名称节点记录块的存在和状态。
我认为,当它说“编写管道”时,它只是指以下过程:
创建块
向nn注册
正在执行复制
对磁盘进行写刷新
在集群中保持块状态(位置、已锁定、上次更新、校验和等)

相关问题