联邦HDFS(HDFS Federation)

对于联邦HDFS的一些概念,我这里先不进行介绍;下面直接记录我对理解联邦HDFS时产生的疑惑以及疑惑的答案。

问题产生:

首先在我的理论知识中,联邦HDFS,就是有多个active的namenode,不同的namenode掌管hdfs中不同路径下文件的数据,互相隔离,互不影响。

这里理论的论证就是,在CDH页面配置联邦HDFS时,需要指定装载点,即这个nameservice负责管理哪个目录下的数据。这让我肯定了我上面的理论知识,但是

在查看官网联邦HDFS介绍时,发现配置中没有对不同的nameservice指定装载点,然后我查找了一些博客,发现他们配置中也没有指定各自的装载点,但是namenode却能够启动成功,也就是说没有指定明确的装载点没问题,是正确的,这让我对我上面建立的理论知识产生了冲击。

于是产生了如下问题:

  • 因为不同的nameservice负责管理的名称空间不同,但是官网中的配置没有去指定哪个nameservice负责哪个名称空间,那么他们是如何去分配的?

解决过程:

通过翻阅《Hadoop权威指南》,里面有一句话,“每个namenode管理文件系统命名空间中的一部分。例如,一个namenode可能管理/user目录下的所有文件,而另一个namenode可能管理/share目录下的所有文件”

发现之前的观点是正确的,但是官网又是怎么回事?那请求数据时,如何判断是在哪个nameservice中?还是代码指定,手动指定??

于是我接着看《Hadoop权威指南》,发现有viewFs这个东东,于是去官网看一下是什么东东来的,我发现,这不就是我之前所有疑惑的答案吗?

附上viewFs介绍的原话:

The View File System (ViewFs) provides a way to manage multiple Hadoop file system namespaces (or namespace volumes). It is particularly useful for clusters having multiple namenodes, and hence multiple namespaces, in HDFS Federation. ViewFs is analogous to client side mount tables in some Unix/Linux systems. ViewFs can be used to create personalized namespace views and also per-cluster common views.

附上viewFs的结构图:

这里写图片描述

也就是说viewFs会帮我们统筹所有的namenode,并且有一个数据表将文件路径映射到namenode!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值