http://hadoop.apache.org/docs/r2.9.0/hadoop-project-dist/hadoop-hdfs/Federation.html

Background

HDFS有两个主要的层:

  • Namespace

    • 由目录、文件和块组成
    • 它支持所有的文件系统命名空间操作,比如,创建、删除、修改、查看文件或目录
  • Block Storage Service
    • Block Management(在NameNode中执行)

      • 管理DataNode集群中的成员
      • 处理Block报告,并且维护Block的位置
      • 支持block相关操作,比如,创建、删除、修改、查看block位置
      • 管理副本的位置,block的复制
    • Storage
      • 由DataNode来提供,存储block到本地文件系统,并提供读写访问

PS:就像图中画的那样,HDFS主要包括两方面:NameSpace和Block Storage。HDFS中有两种类型的节点,NameNode负责NameSpace和Block Management,而DataNode负责Storage

在先前的HDFS架构中,整个集群只允许有一个namespace,一个NameNode来管理这个namespace。HDFS Federation通过支持多个NameNodes/namespaces来突破这种限制。

Multiple Namenodes/Namespaces

为了水平的扩展name服务,federation采用多个独立的NameNodes/namespaces。NameNodes是独立的,彼此之间不需要联系和协调。DataNodes被用来作为所有NameNodes的公共存储。每一个DataNode会注册到集群中的所有NameNode。DataNode发送周期性的心跳和block报告。它们也处理来自NameNode的命令。

用户可能用ViewFs创建个性化的namespace views。ViewFs和Linux系统中挂载表很类似。

Block Pool

一个Block Pool是属于某个namespace下的一系列block。DataNode存储集群中所有block pool的块。每一个block pool被独立管理。一个namespace为一个新block生产Block ID的时候不需要管其它的namespace。一个NameNode失败不会影响这个DataNode为集群中的其它NameNode提供服务。

一个Namespace和它的block pool一起被叫做“Namespace Volume”。它是一个独立的管理单元。当一个NameNode/namespace被删除的时候,在DataNode中与之相应的block pool也会被删除。在集群升级的时候,每个namespace volume作为一个单元被升级。(PS:block pool是一系列的block,所以当namespace被删除的时候,属于这个namespace的所有block也会被删除)

HDFS Federation的更多相关文章

  1. HDFS Federation (读书笔记)

    HDFS Federation (读书笔记) HDFS的架构 HDFS包含两个层次:命名空间管理(Namespace) 和 块/存储管理(Block Storage). 命名空间管理(Namespac ...

  2. HDFS Federation与HDFS High Availability详解

    HDFS Federation NameNode在内存中保存文件系统中每个文件和每个数据块的引用关系,这意味着对于一个拥有大量文件的超大集群来说,内存将成为限制系统横向扩展的瓶颈.在2.0发行版本系列 ...

  3. HDFS概述(3)————HDFS Federation

    本指南概述了HDFS Federation功能以及如何配置和管理联合集群. 当前HDFS背景 HDFS主要有两层: 1.Namespace (1)包含目录,文件和块. (2)它支持所有命名空间相关的文 ...

  4. [HDFS Manual] CH6 HDFS Federation

    HDFS Federation HDFS Federation 1 Background 2.多个namenode/namespace 2.1 关键好处 3 联合配置 3.1 配置 3.2 格式化na ...

  5. HDFS Federation客户端(viewfs)配置攻略

    转自:http://dongxicheng.org/hadoop-hdfs/hdfs-federation-viewfs/ 1. HDFS Federation产生背景 在Hadoop 1.0中,HD ...

  6. HDFS Federation(转HDFS Federation(HDFS 联盟)介绍 CSDN)

    转载地址:http://blog.csdn.net/strongerbit/article/details/7013221 HDFS Federation(HDFS 联盟)介绍 1. 当前HDFS架构 ...

  7. 部署hadoop2.7.2 集群 基于zookeeper配置HDFS HA+Federation

    转自:http://www.2cto.com/os/201605/510489.html hadoop1的核心组成是两部分,即HDFS和MapReduce.在hadoop2中变为HDFS和Yarn.新 ...

  8. 【Hadoop】HDFS笔记(二):HDFS的HA机制和Federation机制

    HA解决了HDFS的NameNode的单点问题: Federation解决了整个HDFS集群中只有一个名字空间,并且只有单独的一个NameNode管理所有DataNode的问题. 一.HA机制(Hig ...

  9. HDFS 10 - HDFS 的联邦机制(Federation 机制)

    目录 1 - 为什么需要联邦 2 - Federation 架构设计 3 HDFS Federation 的不足 版权声明 1 - 为什么需要联邦 单 NameNode 的架构存在的问题:当集群中数据 ...

随机推荐

  1. 解析XML文件之使用SAM解析器

    XML是一种常见的传输数据方式,所以在开发中,我们会遇到对XML文件进行解析的时候,本篇主要介绍使用SAM解析器,对XML文件进行解析. SAX解析器的长处是显而易见的.那就是SAX并不须要将全部的文 ...

  2. 浅谈MySQL中的查询优化

    mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等.这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整 ...

  3. 在Docker中运行asp.net core 跨平台应用程序

    概述 Docker已经热了有一两年了,而且我相信这不是一个昙花一现的技术,而是一个将深远影响我们日后开发和部署.运营应用系统的一种创新(很多人将其作为devops的一种非常重要的基石).学习docke ...

  4. EL表达式的简单实用

    EL表达式 EL(Expression Language) 是为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方 ...

  5. python实现斐波那契数列(Fibonacci sequence)

    使用Python实现斐波那契数列(Fibonacci sequence) 斐波那契数列形如 1,1,2,3,5,8,13,等等.也就是说,下一个值是序列中前两个值之和.写一个函数,给定N,返回第N个斐 ...

  6. Django的缓存机制

    由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5 ...

  7. ERROR: Java 1.7 or later is required to run Apache Drill.

    问题 Apache 的 drill 执行启动命令 drill-embedded 报错: ERROR: Java 1.7 or later is required to run Apache Drill ...

  8. ABP 用swagger UI测试API报401无权限访问问题

    问题描述: 当我们用swagger UI对Web API 进行测试时报401错误 我们点开GET /api/services/app/Role/GetAll,输入参数 点击Try it out!按钮, ...

  9. Error Running Git Empty git --version output:IDEA关联GitHub时出现这个错误

    刚刚学习使用idea中,想要把自己的项目上传到github,遇到这样一个问题,先记录下来,到时候解决了在把方法贴出来. ---------------------------------------- ...

  10. tensorflow ckpt文件转caffemodel时遇到的坑

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...