近年来,已经有越来越多的企业参与到Hadoop社区的发展中来,它们对HDFS的改造提出了不同的方案,有的是基于社区版HDFS源码进行改造,比如Cloudera的CDH版本和Facebook的AvatarNode,也有的是参照HDFS重写一套分布式文件系统,比如百度的HDFS2和腾讯的XFS,当然社区也推出了新的版本Hadoop0.23。总的来看,Hadoop 0.23的Federation HDFS、百度的HDFS2和腾讯的XFS做了较为全面的改造,而ClouderaCDH4 beta1、Facebook的AvatarNode以及Hadoop 0.23 HA是为了解决特定问题——Namenode单点故障而做的。

首先,我们来介绍Hadoop0.23中Federation HDFS的架构,如下图所示。从逻辑上看,FederationHDFS中命名空间和文件块管理还是由Namenode负责,Datanode负责文件块物理存储和访问,但是FederationHDFS允许在一个集群中运行多个Namenode,每个Namenode负责一个命名空间(可以是非HDFS的命名空间),每个命名空间拥有至少一个逻辑的BlockPool,命名空间和它所拥有的BlockPool统称为一个NamespaceVolume。虽然这些命名空间从物理上看是共享集群中的Datanode,但是在每个Datanode上还是对每个命名空间的BlockPool进行了隔离的,而且Datanode需要向每个相关的Namenode进行汇报。采用FederationHDFS架构,集群失去了统一的命名空间管理,换来的是多个命名空间可自主升级的灵活性和降低集群整体不可用的风险。

百度的HDFS2架构如下图所示,从上到下分大致划分为两个层次:Namespace Federation(原Namenode)和Object Manager Layer(原Datanode)。在Namespace Federation层,HDFS2不再包括文件属性和块管理功能,实现了轻量级命名空间管理,和社区版Federation HDFS类似,Namespace Federation也支持多种命名空间,包括层次化的和平坦的;在Object ManagementLayer中,它不仅负责块的物理存储和访问,还整合了文件属性和块管理功能,每个Datanode对该功能进行了垂直切分,各自管理一部分。客户端访问HDFS2时,通过Namespace找到该文件名对应的Datanode和文件标识,并根据这些信息访问指定的Datanode获取文件属性和它的块信息。但是,HDFS2现有版本还没有实现高可用解决方案。

腾讯的XFS是由搜索部门采用C++开发的分布式文件系统,它也实现了元数据信息的分离,并且通过SDK包兼容HDFS,即让HDFS运行在XFS上。如下图所示,XFS中命名空间由Master进行管理,XFS的Master通过主从热备实现了高可用解决方案,由Zookeeper实现监控、选举和切换;文件标识和块管理由独立的MetaServer进行管理,它记录了文件属性、长度以及该文件拥有的块等信息;与Datanode类似,块物理存储和访问由NodeServer负责。客户端在访问XFS时,先通过文件名在Master上获取MetaServer标识和文件标识等信息,然后在指定的MetaServer上获得需要请求的文件信息或者块信息,如果要访问文件的块,则通过NodeServer获取块内容。

HDFS改造方案一览相关推荐

  1. mysql 分区表_分享一份生产环境mysql数据库分区表改造方案

    概述 简单分享下最近做的一个mysql数据库分区表改造方案,仅供参考. 思路:(假设在2020.7.21进行表分区改造) 没时间,就不画图说明了 1.创建与原始表一样结构的新表,新分区 2.往新表插入 ...

  2. swift 组件化_京东商城订单模块基于 Swift 的改造方案与实践

    ABI Stability & Module Stability 以及Swift优势 2019年Swift 5发布,标志这门语言迎来了一个重大的里程碑.与之前的版本相比除了一些基础语法的改变, ...

  3. 项目实战丨某高校校园网络升级改造方案

    项目名称 某高校校园网网络优化升级 参与人员 参与学员:莫同学 学习课程:CCNA+CCNP+CCIE 微思工程师:郑工 项目背景 校园网是指利用网络设备.适宜的组网技术与协议.通信介质以及各类系统软 ...

  4. 一种zabbix server扩容改造方案

    本文原创作者鲍光亚,京东商城基础平台部软件开发工程师,经作者同意发表于本人博客,如需转载需经本人同意. 一.引言 随着监控量的迅速增长,zabbix管理员有一天会发现硬盘iops达到了数万,接近硬盘i ...

  5. esp8266电池供电方案_硬核干货!十大5G基站电源改造方案

    点击上方U学在线一键关注,回复以下数字即可查看更多精彩内容: [201]5G耗电/建址问题各地如何解决? [202]拖欠工程款,最高可判7年! [203]146家企业串标826万施工项目! [204] ...

  6. Abp vNext异常处理的缺陷/改造方案

    之前吐槽Abp的用户/租户管理模块!今天我又来了,这次我给Abp官方repo提了一个issue. 目前Website使用Abp vNext开发,免不了要全局处理异常.提示服务器异常信息. 1. Abp ...

  7. 过磅系统更换服务器,无人值守过磅系统改造方案

    智能无人值守过磅系统改造方案 以前,汽车运输的物料计量工作采用汽车衡仪表显示计量数据,司磅员手工填写单据.报表,这就造成了管理上的许多问题如:安全性差.操作繁琐.作弊.统计错误.数据不能共享等,给企业 ...

  8. Dubbo to Mesh 云原生架构改造方案解析

    作者 | 腾讯云泛互云原生团队 责编 | 屠敏 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) Dubbo 是一款高性能的 Java RPC 框架,它除了拥有卓越的 ...

  9. 多点多地网络改造方案

    - 客户背景 - 客户是一家享有盛誉的高质量PCB产品开发商和供货商,总部在全球各地设立工厂及分公司. - 客户需求 - 组网: 总部.广州以及国外分公司以MPLS VPN组网: 用户: 总部,广州, ...

最新文章

  1. 变参标准函数的重新封装,如printf
  2. Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
  3. Android 调用系统的分享[完美实现同一时候分享图片和文字]
  4. 【Linux】查看日志文件
  5. 笔试编程题常用的一些技巧方法
  6. 如何让同局域网的同事访问我电脑上的PHP网站和数据库
  7. JMeter压力测试步骤
  8. STM32芯片包下载教程
  9. 设计模式学习笔记--访问者(Visitor)模式
  10. 多线程面试题汇总(一)
  11. 组合数学之二 —— 容斥原理及应用
  12. 美国华盛顿州立大学计算机排名,华盛顿州立大学计算机科学computer science专业排名第251~300名(2020THE泰晤士高等教育世界大学排名)...
  13. 《卡尔琳记事本》,召唤师的故事,周更
  14. ForkJoinPool的理解
  15. 通过车牌号查车辆信息的方法有哪些?
  16. 阿里云李飞飞:帮1000家企业“去O”,完成10000套传统数据仓库上云
  17. 基于单片机的便携式超声波测厚仪的研制-protues仿真毕业设计
  18. jquery 使用自适应步骤条
  19. Chrome访问https页面显示ERR_CERT_INVALID,且无法跳过继续访问 本地证书过期处理
  20. redis 高可用与持久化

热门文章

  1. 庄子·内篇·养生主第三
  2. 情话计算机教授,大学各专业学霸的情话走红,教授看后赞叹不已,网友:拿走用了...
  3. 蘑菇街API 获取商品详情 Onebound全球电商数据接口
  4. Java 代码如何获取CPU核心数和定义线程池的核心数
  5. 一张图看懂黄奇帆对房地产的结构化分析
  6. 安卓新LOGO刚刚出炉!看着像毛毛虫
  7. 随机迷宫生成算法——深度优先算法
  8. 学习笔记:Controllable Artistic Text Style Transfer via Shape-Matching GAN 基于形状匹配生成对抗网络的可控艺术文本风格迁移
  9. 可以Homekit控制的智能开关
  10. iphone6s 刷android,iPhone也能刷安卓,只限两款手机,国外大神骚操作