HDFS 技术

HDFS定义

Hadoop Distributed File System,是一个使用 Java 实现的、分布式的、可横向扩展的文件系
统,是 HADOOP 的核心组件

HDFS特点

  • 处理超大文件
  • 流式地访问数据
  • 运行于廉价的商用机器集群上;
    HDFS 不适合以下场合:
  • 低延迟数据访问
  • 大量小文件的存储
  • 不支持多用户写入及任意修改文件

HDFS基本结构

image.png

HDFS相关概念 --块

  1. HDFS使用了块的概念,默认大小128M/256M字节
  • 可针对每个文件配置,由客户端指定
  • 每个块有一个自己的全局ID
  1. HDFS将一个文件分为一个或数个块来存储
  • 每个块是一个独立的存储单位
  • 以块为单位在集群服务器上分配存储
  1. 与传统文件系统不同的是,如果实际数据没有达到块大小,则并不实际占用整个块磁盘空间
  • 如果一个文件是200M,则它会被分为2个块: 128+72

HDFS相关概念 --元数据

  1. 元数据 (MetaData)包括
    文件系统目录树信息
  • 文件名,目录名
  • 文件和目录的从属关系
  • 文件和目录的大小,创建及最后访问时间
  • 权限

文件和块的对应关系

  • 文件由哪些块组成

块的存放位置

  • 机器名,块ID

image.png

  1. HDFS对元数据和实际数据采取分别存储的方法
  • 元数据存储在NameNode服务器上;
  • 实际数据储存在集群的DataNode中

HDFS相关概念 --NameNode

NameNode是用来管理文件系统命名空间的组件。一个HDFS集群只有一台(active)NameNode

  • NameNode上存放了HDFS的元数据,记录了每个文件中各个块所在的数据节点的位置信息。一个HDFS集群只有一份元数据,可能有单点故障问题
  • 元数据工作时在NameNode内存中,以便快速查询。1G内存大致可存放1,000,000块对应的元数据信息。按缺省每块64M计算,大致对应64T实际数据
  • 集群关闭时,元数据持久化到磁盘中,启动集群时,需要将元数据装载到内存中
NameNode数据结构
  • NameNode负责管理分布式文件系统的Na
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值