Hadoop分布式文件系统(HDFS)

HDFS是Hadoop项目的核心子项目,用于处理和存储超大文件,支持流式数据访问和高吞吐量。设计时考虑了硬件错误的常态,采用副本复制策略保证容错性。HDFS具有透明性、并发控制、可伸缩性、容错性和安全需求。文件以block形式分散存储,读写时并发执行,并具备负载均衡策略。
摘要由CSDN通过智能技术生成

HDFS简介

HDFS(Hadoop Distributed File System)是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的,可以运行于廉价的商用服务器上。
它所具有的高容错、高可靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存储,为超大数据集的应用处理带来了很多便利。
这里写图片描述

1、HDFS要求与限制

能处理超大文件
HDFS以支持大数据集合为目标,文件大小一般都在千兆至T字节,一个单一HDFS实例应该能支撑数以千万计的文件。

流式数据访问
HDFS设计的思想:一次写入、多次读取(write-one-read-many访问模型)。一个文件经过创建和写入,关闭之后就不需要改变。
这一假设简化了数据一致性问题,使高吞吐量的数据访问成为可能。

使用商用硬件
Hadoop不需要运行在昂贵并且高可靠性的硬件上,因此,硬件错误是常态。
HDFS可能是有成百上千的server组成,任何一个组件都可能失效,因此错误检测和快速、自动地恢复是HDFS的核心架构目标。
HDFS在面对这种故障时,被设计为能够继续运行而不让用户觉察到明显的中断。

低延迟数据访问
HDFS为达到高数据吞吐量而优化的,这可能会以延迟为代价。因此,需要毫秒范围内低延迟访问数据的应用不适合HDFS。

小文件存储问题
HDFS中的名称节点(Namenode)存储着文件系统的元数据,因此文件数量的限制也由NameNode的内存大小决定。
HDFS上每个文件索引数据块的大小约为150个字节,因此,HDFS上存储文件个数的上限就能确定了。

文件随机读写限制
HDFS中的文件只有一个写入者,而且写操作总是在文件的末尾。它不支持多个写入者,或是在文件的任意位置修改。

总结
  • 流式数据访问模式—简化了数据一致性问题,使数据并发访问成为可能。
  • 廉价设备—错误检测、快速恢复、不丢失数据。
  • 超大文件存储方式—-分布式存储、分布式访问。
  • HDFS存储空间—动态扩容
  • 众多小文件的存储—–压缩
  • 文件的随机读写—-Hbase

  • 大文件总是被分隔成很多小的文件块,分散存储在机房的各个机器的不同磁盘上。
  • 文件的读写都是并发执行的
  • 一个磁盘或者一台服务器出故障不影响业务。
  • 可根据实际需要增加或者删除集群中的节点数

2、HDFS设计需求

针对HDFS的要求,设计需求大概是这么几个:

  • 透明性(针对HDFS的一切操作和管理都是透明的)
  • 并发控制
  • 可伸缩性
  • 容错
  • 安全需求

(1)透明性

开放分布式处理的标准确定就有8种透明性:访问的透明性、位置的透明性、并发透明性、复制透明性、故障透明性、移动透明性、性能透明性和伸缩透明性。
对于HDSF而言,最重要的是希望能达到如下5个透明性要求:

访问的透明性
用户访问本地文件和远程文件资源所采用的接口是一致的,通过修改配置文件来实现。访问HDFS时也不需要知道所访问的文件存放在集群的哪个节点的哪个磁盘上。
这里写图片描述

(a)Na

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值