A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【转载】        https://blog.csdn.net/u010819416/article/details/82054809

管理网络中跨多台计算机存储的文件系统称为分布式文件系统。
HDFS : Hadoop Distributed FileSystem

3.1 HDFS的设计
以流式数据访问模式来存储超大文件,运行于商用硬件集群上。
* 超大文件
* 流式数据访问 : 一次写入,多次读取
* 商用硬件(普通硬件)
* 高时间延迟的数据访问
要求低时间延迟数据访问的应用,不适合在HDFS上运行。对于低延迟的数据访问,可以选择HBase
* 大量的小文件
* 单用户写入,添加方式修改

3.2 HDFS概念

3.2.1 数据块
块的好处:
1、一个文件的大小可以大于网络中任意一个磁盘的容量。
2、使用抽象块而非整个文件作为存储单元,简化了存储子系统的设计。
3、适合用于数据备份进而提供数据容错能力和提高可用性。

fsck显示块信息。

3.2.2 namenode 和 datanode

namenode管理节点
管理文件系统的命名空间,维护着文件系统树及整颗树内所有的文件和目录。

datanode工作节点
根据需要存储并检索数据块,并且定期向namenode发送它们所存储的块的列表。

3.2.3 块缓存
datanode从磁盘中读取块,访问频繁的文件可能被显示地缓存在datanode的内存中,以堆外块缓存的形式存在。

3.2.4 联邦HDFS
在联邦环境下,每个namenode维护一个命名空间卷,由命名空间的元数据和一个数据块池组成,数据块池包含该命名空间下文件的所有数据块。

3.2.5 HDFS的高可用性
配置了一对活动-备份namenode,当活动namenode失效,备用namenode就会接管它的任务并开始服务于来自客户端的请求,不会有任何明显中断。

3.3 命令行接口
伪分布配置时,有两个属性项需要进一步解释。
1、fs.defaultFS,设置为hdfs://localhost/,用于设置hadoop的默认文件系统。
在localhost默认的HDFS端口8020上运行namenode。
2、dfs.replication,设为1,HDFS就不会按默认设置将文件系统块副本设为3

文件系统的基本操作

3.4 Hadoop文件系统
Hadoop有一个抽象的文件系统概念,HDFS只是其中的一个实现。JAVA抽象类FileSystem定义了Hadoop中一个文件系统的客户端接口,并且该抽象类有几个具体实现。

*接口
Hadoop



3 个回复

倒序浏览
回复 使用道具 举报
奈斯,加油加油
回复 使用道具 举报
奈斯,加油加油
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马