暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

大数据-HDFS简介与特点

破晓的不止黎明 2019-07-17
637


HDFS简介:

HDFS Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。

分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。分布式文件系统在大数据时代有着广泛的应用前景,它们为存储和处理超大规模数据提供所需的扩展能力。

分布式文件系统详细介绍

hadoop当中,分布式文件系统HDFS,对文件系统有一个抽象,HDFS属于当中的一个实现类,也就是说分布式文件系统类似于一个接口,定义了标准,下面有很多的实现类,其中HDFS是一个子实现类而已,但是现在很多人都知道一种就是HDFS的实现,并没有了解过其他的实现类,其实分布式文件系统的实现很多种,


HDFS分布式文件系统设计目标

1、 硬件错误

 由于集群很多时候由数量众多的廉价机组成,使得硬件错误成为常态

2、 数据流访问 

 所有应用以流的方式访问数据,设置之初便是为了用于批量的处理数   据,不是低延时的实时交互处理

3、 大数据  

 典型HDFS集群上面的一个文件是以G或者T数量级的支持一个集群当中的文件数量达到千万数量

4、 简单的相关模型  假定文件是一次写入,多次读取的操作

5、 移动计算比移动数据便宜 

  一个应用请求的计算,离它操作的数据越近就越高效

6、 多种软硬件的可移植性

 

 

HDFS的来源

HDFS起源于GoogleGFS论文(GFSMapreduceBigTablegoogle旧的三驾马车

发表于2003年10

HDFS是GFS的克隆版(Hadoop  Distributed  File  system

易于扩展的分布式文件系统

运行在大量普通廉价机器上,提供容错机制

大量用户提供性能不错的文件存取服务


HDFS特性

首先,它是一个文件系统,用于存储文件,通过统一的命名空间目录树来定位文件;

其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。


master/slave 架构

HDFS 采用 master/slave 架构。一般一个 HDFS 集群是有一个 Namenode 和一定数目的Datanode 组成。Namenode HDFS 集群主节点,Datanode HDFS 集群从节点,两种角色各司其职,共同协调完成分布式的文件存储服务。


分块存储

HDFS 中的文件在物理上是分块存储(block)的,块的大小可以通过配置参数来规定,默认大小在 hadoop2.x 版本中是 128M


名字空间(NameSpace

HDFS 支持传统的层次型文件组织结构。用户或者应用程序可以创建目录,然后将文件保存在这些目录里。文件系统名字空间的层次结构和大多数现有的文件系统类似:用户可以创建、删除、移动或重命名文件。

Namenode 负责维护文件系统的名字空间,任何对文件系统名字空间或属性的修改都将被Namenode 记录下来。

HDFS 会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件


Namenode 元数据管理

我们把目录结构及文件分块位置信息叫做元数据。Namenode 负责维护整个hdfs文件系统的目录树结构,以及每一个文件所对应的 block 块信息(block id,及所在的datanode 服务器)。


Datanode 数据存储

文件的各个 block 的具体存储管理由 datanode 节点承担。每一个 block 都可以在多个datanode 上。Datanode 需要定时向 Namenode 汇报自己持有的 block信息。存储多个副本(副本数量也可以通过参数设置 dfs.replication,默认是 3


副本机制

为了容错,文件的所有 block 都会有副本。每个文件的 block 大小和副本系数都是可配置的。应用程序可以指定某个文件的副本数目。副本系数可以在文件创建的时候指定,也可以在之后改变


一次写入,多次读出

HDFS 是设计成适应一次写入,多次读出的场景,且不支持文件的修改。

正因为如此,HDFS 适合用来做大数据分析的底层存储服务,并不适合用来做.网盘等应用,因为,修改不方便,延迟大,网络开销大,成本太高

文章转载自破晓的不止黎明,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论