Hadoop 分布式文件系统
当数据集的大小超过一台独立物理计算机时,就有必要对它进行分区并存储到若干台单独的计算机上。管理
网路中跨多台计算机存储的文件系统就称为分布式文件系统。
HDFS的设计
HDFS以流式数据访问模式来存储超大文件,运行于商用硬件集群上。
1.超大文件。
2.流式数据访问。
3.商用软件。
不适合HDFS上运行的应用:
1.低时间延迟的数据访问。
2.大量的小文件。
3.多用户写入,任意修改文件。
HDFS的概念
数据块
每个磁盘都有默认的数据块大小,这是磁盘进行数据读写的最小单位。
HDFS同样也是有块(block)的概念,但是大的多,默认为64MB。HDFS上的文件被划为块大小的多个分块(chunk),
作为独立的存储单元。与其他文件系统不同,HDFS中小于一个块大小的文件不会占据整个块空间。
HDFS中的块为何如此大?
其目的是为了最小化寻址开销。
对分布式文件系统中的块进行抽象的好处
1.一个文件的大小可以大于网络中任意一个磁盘的容量。文件的所有块并不需要存储在同一个磁盘上。
2.使用块抽象而非整个文件作为存储单元。大大简化了存储子系统的设计。
将存储子系统控制单元设置为块,可简化存储管理,及非常适合用于进行数据备份进而提供数据容错
能力和可用性。将每个块复制到几个独立的机器上,可以确保发生块,磁盘或机器故障后,数据不丢失。
NAMENODE和DATANODE
HDFS集群有两类节点,并以管理者-工作者模式工作,即一个namenode(管理者)和多个datanode(工作者)。
namenode管理文件系统的命名空间,它维护者文件系统树及整棵数内所有的文件和目录,这些信息以两个
文件形式永久保存在本地磁盘上: 命名空间镜像和编辑日志文件。namenode也记录着每个文件中各个块
所在的数据节点信息,但它并不永久保存块的位置信息,因为这些信息会在系统启动时由数据节点重建。
datanode是文件系统的工作节点,它们根据需要存储并检索数据块(受客户端或namenode调度),并且定期向
namenode发送它们所存储的块的列表。
没有namenode,文件系统将无法使用。因此对于namenode实现容错非常重要,Hadoop为此提供了两种机制。
第一种机制是备份那些组成文件系统元数据持久状态的文件。一般的配置是,将持久状态写入本地磁盘的同时,
写入一个远程挂载的网络文件系统(NFS)。这些写操作时实时同步的,是原子操作。
另一种可行的方法是运行一个辅助namenode,但它不能用作namenode。这个辅助namenode的重要作用是定期
通过编辑日志合并命名空间镜像,以防止编辑日志过大。这个辅助namenode一般在另外一台单独的物理计算机
上运行,因为它需要大量cpu时间与namenode相同容量的内存来执行合并操作。它会保存合并后的命名空间
镜像的副本,并在namenode发生故障时启用。但通常保存的状态总是滞后于主节点。
HDFS联邦
HDFS系统可以同时拥有多个namenode,它解决了namenode的单点问题,一来是减少单点namenode崩溃带来的潜在危险,
另外可以减轻单个namenode的性能瓶颈。
1.目的水平扩展名称服务
2.使用多个独立的namenode和namespaces。每个namenode是独立的,不需要和其他namenode协调合作。
3.datanode作为统一的块存储设备被所有namenode节点使用。
4.每一个datanode节点都在所有namenode进行注册。datanode发送心跳信息,块报告到所有namenode,同时执行
所有namenode发送来的命令。
块池(Block Pool)
块池属于单个命名空间的一组块。
每个datanode为所有的block pool存储块。
Datanode是一个物理概念,而block pool是一个重新将block划分的逻辑概念。
同一个datanode可以属于多个block pool的多个块。
Block pool允许在不通知其他命名空间的情况下为一个新的block创建block id。
一个namenode失效不会影响其下的datanode为其他namenode的服务。
很多分布式系统采用Hash在这一分布式系统里常用的手段,因为同一目录的文件可能散步于各个命名空间,性能
很差,及当一个namenode损坏时,会影响多个目录下的文件。
Hadoop采用Client Side Mount Table的算法,将同一目录下的所有文件映射到同一个namenode中。
HDFS 2.x版本的新特性
HDFS 联邦:解决了单点NAMENODE的性能瓶颈
HDFS HA: 解决了1.x版本NAMENODE在遇到故障时无法自动切换的问题。
HDFS 快照
分享到:
相关推荐
hadoop权威指南4和源码hadoop权威指南4和源码hadoop权威指南4和源码hadoop权威指南4和源码
Hadoop权威指南中文版(完全版)Hadoop权威指南中文版(完全版)Hadoop权威指南中文版(完全版)Hadoop权威指南中文版(完全版)
本书是hadoop权威参考,程序员可从中探索如何分析海量数据集,管理员可以从中了解如何安装与运行hadoop集群。 什么是谷歌帝国的基石?mapreduce算法是也!apache hadoop架构作为mapreduce算法的一种开源应用,是...
Hadoop权威指南
Hadoop权威指南----读书笔记
本文带来的资源是hadoop权威指南第四版中文版,适合hadoop深入学习
《Hadoop 2.X HDFS源码剖析》以Hadoop 2.6.0源码为基础,深入剖析了HDFS 2.X中各个模块的实现细节,包括RPC框架实现、Namenode实现、Datanode实现以及HDFS客户端实现等。《Hadoop 2.X HDFS源码剖析》一共有5章,其中...
Hadoop编程书籍,由浅入深,介绍Hadoop编程,特别适合初学者以及企业开发人员以及大学生以及其他深造学习者
hadoop权威指南第四版高清 pdf下载 hadoop权威指南第四版高清 pdf下载
Hadoop权威指南(中文版)(带书签 Hadoop权威指南(中文版)(带书签 Hadoop权威指南(中文版)(带书签 Hadoop权威指南(中文版)(带书签
hadoop权威指南中文版 云计算 java hive hbase mapreduce hdfs
绝对第四版!绝对中文!绝对完整!绝对第四版!绝对中文!绝对完整! Hadoop权威指南 大数据 第四版 修订版&升级版 中文版 pdf格式。Tom White 著,王海 等译,清华大学出版社,最新第4版。
Hadoop权威指南第四版中文版,高清扫描版,有源码 本文带来的资源是hadoop权威指南第四版中文版以及配套的源码,内容以Hadoop2.x为主,包含一些hadoop的stable版本的新特性,与之前 的版本相比增加了介绍YARN , ...
hadoop权威指南代码 (Hadoop: The Definitive Guide code) http://www.hadoopbook.com
本书是Hadoop权威参考,程序员可从中探索如何分析海量数据集,管理员可以从中了解如何安装与运行Hadoop集群。 目录 第1章 初识Hadoop 数据!数据! 数据存储与分析 与其他系统相比 关系型数据库管理系统...
史上最全--HADOOP权威指南 第3版 PDF电子书下载 带目录书签 完整版
Hadoop权威指南 第四版 修订版&升级版 中文版 pdf格式。大家放心,绝对是中文版,不骗人。原文件很大,稍压缩了一下,页面依然非常清晰。无水印。共732页。 Tom White 著,王海 等译,清华大学出版社,2017年7月第4...
新版已上市!全面深度解读Hadoop的指南,驰骋于云计算和大数据领域的通俗读本
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据...
本书从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。