深入解读大数据框架Hadoop之HDFS架构

本文详细介绍了Hadoop的分布式文件系统HDFS,包括其高容错性、高吞吐量访问、流式访问设计以及一次写入多次读取的文件模型。HDFS具有主/从架构,由NameNode和DataNode组成,NameNode管理文件系统名称空间和数据块映射,而DataNode存储数据块。HDFS通过机架感知策略优化数据复制和读取性能,确保数据可靠性。此外,文章还探讨了NameNode的元数据管理、数据完整性、故障恢复机制和数据组织方式,以及HDFS的访问和使用方法。
摘要由CSDN通过智能技术生成

深入解读大数据框架Hadoop之HDFS架构

 

Hadoop分布式文件系统(HDFS)是一种分布式文件系统。它与现有的分布式文件系统有许多相似之处。但是,与其他分布式文件系统的差异是值得我们注意的:

HDFS具有高度容错能力,旨在部署在低成本硬件上。(高容错)

HDFS提供对数据的高吞吐量访问,适用于具有海量数据集的应用程序。(高吞吐量)

HDFS放宽了一些POSIX要求,以实现对文件系统数据的流式访问。(流式访问)

HDFS最初是作为Apache Nutch网络搜索引擎项目的基础设施而构建的。HDFS是Apache Hadoop Core项目的一部分。

目标和假设

硬件故障检测:硬件故障是常态而非例外。Hadoop通常部署在低成本的硬件上,并且通常包含成百上千的服务器,每个服务器都存储文件系统数据的一部分。由于存在大量的组件,并且每个组件都具有不可忽略(non-trivial )的故障概率,这意味着HDFS的某些组件始终都不起作用。因此,故障检测并快速恢复是HDFS的核心架构目标。

流式访问:HDFS更适合批处理而不是交互式使用,更加注重数据访问的高吞吐量而不是数据访问的低延迟。在HDFS上运行的应用程序需要对其数据集进行流式访问。

海量数据集:运行在HDFS上的应用程序具有大型数据集,HDFS中的一个典型文件的大小是g到tb,因此,HDFS被调优为支持大文件。它应该提供高聚合数据带宽,并可扩展到单个集群中的数百个节点。它应该在一个实例中支持数千万个文件。

一致性模型:HDFS应用程序需要一个一次写入多次读取的文件访问模型。文件一旦创建、写入和关闭,除了追加和截断操作外,无需要更改。支持将内容追加到文件末尾,但无法在任意点更新。该假设简化了数据一致性问题并实现了高吞吐量数据访问。MapReduce应用程序或Web爬虫应用程序完全适合此模型。

移动计算比移动数据便宜:应用程序请求的计算如果在其操作的数据附近执行,效率会高得多。当数据集的大小很大时尤其如此。已经为大家精心准备了大数据的系统学习资料,从Linux-Hadoop-spark-......,需要的小伙伴可以点击这可以最大限度地减少网络拥塞并提高系统的整体吞吐量。因此更好的做法是将计算迁移到更靠近数据所在的位置,而不是将数据移动到运行应用程序的位置。HDFS为应用程序提供了一些接口,使它们自己更接近数据所在的位置。

跨平台和可移植:Hadoop使用Java语言开发,使得Hadoop具有良好的跨平台性。

NameNode和DataNodes

HDFS具有主/从( master/slave)架构。HDFS集群由一个NameNode和许多DataNode组成,NameNode是一个主服务器(master),管理文件系统名称空间并管理客端对数据的访问(NameNode在Hadoop集群中充当u管家/u的角色)。此外集群中每个节点通常是一个DataNode,DataNode管理它们的节点上存储的数据。

HDFS公开文件系统名称空间,并允许用户数据存储在文件中。在内部,文件被分成一个或多个块(block),这些块存储在DataNode中。NameNode执行文件系统名称空间的相关操作,如打开、关闭和重命名文件和目录。它还确定了块到DataNode的映射(块存储到哪个DataNode中)。数据节点负责服务来自文件系统客户端的读写请求。数据节点还根据NameNode的指令执行块创建、删除和复制。

深入理解Hadoop之HDFS架构

集群中单一NameNode的结构大大简化了系统的架构。NameNode是所有HDFS元数据的仲

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值