首页 > 其他分享 >HDFS架构设计理念以及优缺点

HDFS架构设计理念以及优缺点

时间:2022-09-30 17:12:51浏览次数:48  
标签:HDFS 存储 架构设计 文件 优缺点 流式 访问 数据

Hadoop是一个由 Apache 基金会开发的分布式系统基础架构。可以快速实现大规模数据的分布式存储开发,以及分布式程序的快速开发,利用集群的威力进行大数据的高速存储和运算。其中 Hadoop 分布式文件系统(Hadoop Distributed File System,HDFS)起到非常重要的作用,HDFS 是 Hadoop 项目核心子项目,HDFS 是分布式计算中数据存储管理的基础,它以文件的形式为上层应用提供海量数据存储服务,并实现了高可靠性、高容性、高可扩展性、高可用性、高吞吐率等特点。


一、HDFS产生的背景
数据量的不断增大导致数据在一个操作系统管辖的范围内存储不下,为了存储这些大规模数据,需要将数据分配到更多操作系统管理的磁盘中存储,但是这样处理会导致数据的管理和维护很不方便,所以迫切需要一种系统来管理和维护多台机器上的数据文件,这种系统就是分布式文件管理系统,而HDFS只是分布式文件管理系统中的一种。


二、HDFS的设计理念
HDFS 的设计理念来源于非常朴素的思想∶即当数据文件的大小超过单台计算机的存储能力时,就有必要将数据文件切分并存储到由若干台计算机组成的集群中,这些计算机通过网络进行连接,而HDFS 作为一个抽象层架构在集群网络之上,对外提供统一的文件管理功能,对于用户来说感觉像在操作一台计算机一样,根本感受不到 HDFS 底层的多台计算机,而且 HDFS 还能够很好地容忍节点故障且不丢失任何数据。
下面来看一下HDFS的核心设计目标。
(1)支持超大文件存储
支持超大文件存储是HDFS最基本的功能。这里的“超大文件”指大小达到TB、PB级别的文件。随着未来技术水平的发展,数据文件的规模还可以更大。
(2)流式数据访问
流式数据访问是HDFS选择的最高效的数据访问方式。
流式数据访问可以简单理解为∶读取数据文件就像打开水龙头一样,可以不停地读取和分析,而且每次分析都会涉及该数据集的大部分甚至全部数据,所以每次读写的数据量都很大,因此对整个系统来说读取整个数据集所需要的时间要比读取第一条记录所需要的时间更重要,即HDFS 更重视数据的吞吐量,而不是数据的访问时间。所以 HDFS 选择采用一次写入、多次读取的流式数据访问模式,而不是随机访问模式。
(3)简单的一致性模型
在 HDFS 中,文件创建、写入、关闭,不再进行修改保证数据的一致性。
(4)硬件故障的检测和快速应对
利用大量普通硬件构成的集群平台中,硬件出现故障是常见的问题。一般的HDFS系统是由数十台甚至成百上千台存储着数据文件的服务器组成,大量的服务器就意味着高故障率,但是HDFS在设计之初已经充分考虑到这些问题,认为硬件故障是常态而不是异常,所以如何进行故障的检测和快速自动恢复也是HDFS的重要设计目标之一。
总之,HDFS能够很好地运行在廉价的硬件集群之上,以流式数据访问模式来存储管理超大数据文件。这也是HDFS成为大数据领域使用最多的分布式存储系统的主要原因。


三、HDFS的优缺点
(1)HDFS的优点:高容错性、适合大数据处理、流式文件访问、可构建在廉价的机器上。
(2)HDFS的缺点:不适合低延时数据访问、不适合大量小文件的存储、不适合并发写入、文件随机修改。
HDFS为海量数据提供了不怕故障的存储,给超大数据集的应用处理带来了很多便利。

标签:HDFS,存储,架构设计,文件,优缺点,流式,访问,数据
From: https://www.cnblogs.com/tiduyun/p/16745515.html

相关文章

  • 运维思考:聊聊高可用的“异地多活”架构设计
    前言后台服务可以划分为两类,有状态和无状态。高可用对于无状态的应用来说是比较简单的,无状态的应用,只需要通过F5或者任何代理的方式就可以很好的解决。后文描述的主要是针......
  • rar、zip优缺点
    zip格式的优点zip的第一优点:普及率。比如说,大部分在internet的压缩文件都是zip压缩文件,所以如果你要传送压缩文件给某一个人,但你无法确定你的收件人是否有winrar来解......
  • 详细讲解三维动画与二维动画的优缺点有哪些?
    二维动画和三维动画是动画制作中两种重要的表现方式。它们有很多相似之处。三维动画制作是以二维动画为基础的。同时,立体动画制作具有更多的独立差异和优势。动画形象策划不......
  • MapReduce分布式计算框架的优缺点​
        MapReduce是一个可用于大规模数据处理的分布式计算框架,它借助函数式编程及分而治之的设计思想,使编程人员在即使不会分布式编程的情况下,也能够轻松地编写分布式应......
  • MapReduce分布式计算框架的优缺点
    MapReduce是一个可用于大规模数据处理的分布式计算框架,它借助函数式编程及分而治之的设计思想,使编程人员在即使不会分布式编程的情况下,也能够轻松地编写分布式应用程序并运......
  • 107-11- HBase-2.4.4 架构设计和架构原理
                                                    重要部分 ......
  • Spark技术内幕-深入解析Spark内核架构设计与实现原理 pdf
    高清扫描版下载链接:https://pan.baidu.com/s/1Kv82svee8ulKnrQvB0VqjA点击这里获取提取码 ......
  • 今日部分知识点总结———SQL注入,hooks的优缺点,cookies,xxxStorage的区别,BFC,合并二叉
    SQL注入在浏览器页面用户提交数据处,输入特定的字符实现sql语句的篡改,从而对数据库进行操作。比如在一个登录界面,要求输入用户名和密码,可以这样输入实现免帐号登录;用户名......
  • 电商支付架构设计
    电商支付架构设计交易核心支付编排------------------------------------------------------------------今天先到这儿,希望对您技术领导力,企业管理,系统架构设计与评估,团队管理,项目管理,产品管理,团队建设有参考作用,您可能感兴趣的文......
  • Spring Cloud与Docker高并发微服务架构设计实施 pdf
    高清扫描版下载链接:https://pan.baidu.com/s/1UEa0pb5JSp2lIIcFwzapEw点击这里获取提取码 ......