hdfs 讲解

HDFS(Hadoop Distributed File System)是一种分布式文件系统,适用于存储大规模数据集,支持高吞吐量数据访问。它具有高容错性,采用“一次写入,多次读取”的模型,适合MapReduce或网络爬虫应用。HDFS由NameNode、DataNode和Secondary NameNode组成,其中NameNode管理文件元数据,DataNode存储数据。HDFS采取机架感知策略进行数据复制,确保数据可靠性。HDFS支持文件的创建、读取、删除和移动,通过Shell命令进行操作。
摘要由CSDN通过智能技术生成

Hadoop分布式文件系统—HDFS

  1. 什么是分布式文件系统

    所谓的分布式文件系统,我的个人理解是管理网络中把数据存储在不止一台机器上的系统,这样的存储方式被称为分布式存储。(管理网络中跨多台计算机存储的文件系统称为分布式文件系统。)

  2. 分布式文件系统能干什么

    (1)分布式文件系统可以存储数据量较大的文件。 (GB,TB,PB级别的海量数据)

    (2)一次写入,多次夺取。(一个文件经过创建、写入和关闭之后就不需要改变。这一假设简化了数据一致性问题,并且使高吞吐量的数据访问成为可能。Map/Reduce应用或者网络爬虫应用都非常适合这个模型。目前还有计划在将来扩充这个模型,使之支持文件的附加写操作。)

    (3)搭建在普通的商业集群机器上就可以了,节省成本

  • HDFS原理

    HDFS(Hadoop Distributed File System)是一个分布式文件系统。它具有高容错性并提供了高吞吐量的数据访问,非常适合大规模数据集上的应用,它提供了一个高度容错性和高吞吐量的海量数据存储解决方案。

  • HDFS在设计时已考虑硬件错误等情况,具有高容错性等特征。HDFS的假设前提术设计目标包括以下几个方面。

    1.硬件错误
    硬件错误是常态而不是异常。HDFS 可能由成百上千台服务器构成,每台服务器上存储着文件系统的部分数据。我们面对的现实是构成系统的组件数量是巨大的,而且任一-组件都有可能失效,这意味着总是有一-部分HDFS的组件是不工作的。因此,错误检测和快速、自动的恢复是HDFS的核心架构目标。

    2.大规模数据集
    运行在HDPFS上的应用具有很大的数据集。HDPFS上一个典型文件的大小般在吉字节至太字节量级。因此,HDFS被配置以支持大文件存储。它能提供整体上较高的数据传输带宽,能在一个集群里扩 展到数百个节点。一个单一的HDFS实例能支撑数以千万计的文件存储和访问。

    3.简单的一致性模型
    HDFS应用需要一个“一 次写人、 多次读取”的文件访问模型。-一个文件经过创建、写人和关闭之后就不需要改变。这一-假设简化了数据一致性问题, 并且使高吞吐量的数据访问成为可能。MapReduce 应用或者网络爬虫应用都非常适合这个模型。

    4.移动计算比移动数据更划算
    一个应用请求的计算,离它操作的数据越近就越高效,在数据达到海量级别的时候更是如此。因为这样就能降低网络阻塞的影响,提高系统数据的吞吐量。将计算移动到数据附近,比将数据移动到应用所在位置显然更好。HDFS提供了将应用移动到数据附近的接口。

    5.异构软硬件 平台间的可移植性
    HDFS在设计的时候就考虑到平台的可移植性,这种特性方便了HDFS作为大规模数据应用平台的推广。

  • HDFS 的组件

    HDFS包含Namenode、Datanode、 Secondary Namenode三个组件。

    1.NameNode
    NameNode负责管理文件目录、文件和block的对应关系以及block和datanode的对应关系。NameNode节点也成为元数据节点,用来管理文件系统的命名空间,维护目录树,接管用户的请求。
    (1) 将文件的元数据保存在一个文件目录树中
    (2) 在磁盘上保存为:fsimage 和 edits
    (3) 保存datanod

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值