hadoop详细文档(三) hadoop之HDFS简介(附带详细讲解视频)

免费视频教程https://www.51doit.com/或者联系博主微信 17710299606\

首先要明确的是HDFS 全称(Hadoop Distribute FIleSystem) Hadoop的分布式文件系统,它的主要职责是分布式存储海量数据!

就是将海量的数据存储在不同的机器上来完成单节点无法存储大量数据的问题!

1 核心设计思想

1) 将海量的数据分别存储在不同的机器上
     1. 将数据切块存储  默认块大小是 128M----> 可修改
          * 传输成功性
          * 运算的效率性
 2) 要求数据安全 , 数据存储副本且不在同一个机器上
    在集群中数据块是存储三个副本的(默认的)----> 可修改
 3) 扩容方便  只需要添加节点(机器),整个系统的存储容量就会增加
 4) 记录数据存储的位置信息,方便用户读取

               元数据: 数据切块和副本存储在哪个机器的哪个位置
 5) 数据存储和数据下载  请求主节点 namenode

 6)从节点启动以后汇报自己的存储容量和存储数据情况 

 7) 客户端上传数据的时候请求主节点, 由主节点分配存储位置

要保证数据存储在集群中不同的节点上

要保证数据的安全性

要保证数据可以定位和读取

集群存储容量便于扩容

2 HDFS组件架构

HDFS 采用的是主从结构  

主节点 NameNode 

从节点 DataNode

从节点启动以后会向主节点注册,主节点维护管理集群中所有的从节点

主节点管理所有的从节点的数据存储和容量监控,存储任务分配, 集群副本维护, 负载均衡任务分配等

 2.1 namenode

  1. 用于记录文件存储的元数据  对象(NameNode将这些数据的元数据信息记录在内存中,并且将这些元数据信息定期的序列化到本地磁盘上), 记录用户操作的行为日志 .记录用户存储的文件的大小、切分的块数、每一块的副本数和存储在DataNode上的位置
  2. 接收客户端的请求,给datanode'分配存储任务 , 或者是给客户端请求数据的元信息
  3. namenode老大 , 维护集群中的节点的数量,接收datanode的注册, 维护了一个统一的集群版本
  4. 维护集群中数据的负载均衡和副本个数
  5. 接收datanode的心跳汇报
  6. 接收datanode的数据的汇报 , 更新节点映射(元数据)

2.2 datanode

datanode节点是HDFS系统正在查处用户数据的节点

1 存储数据,将数据以物理切块的形式存储在本地指定的磁盘目录中

2 处理客户端的请求

3 接收namenode 分配的任务

4 接收namenode的指令完成容错工作 , 副本的复制 移动

5 定期的向namenode心跳响应请求,默认每间隔3s一次

6 汇报自己存储的数据数据1h

3 HDFS特点

(Hadoop Distribute File  System )分布式文件系统,解决了海量数据无法单台机器存储的问题,将海量的数据存储在不同的机器中 ,有HDFS文件系统统一管理和维护, 提供统一的访问目录和API !

3.1 优点

  • 高容错性,安全性

数据存储在不同的机器中,并且每个数据窥块默认存储3个副本(存储在不同的机器中),当集群中的某个数据块的副本由于某种原因(宕机,磁盘损坏等)丢失以后,HDFS会自动恢复!

  • 极易扩展性

HDFS的存储能力可以通过添加机器来扩容,并且极易横向扩容 ,整个集群中所有机器的存储能力就是HDFS的存储能力

  • 可以存储海量数据

单个很大的文件可以存储在HDFS中  , 也可以存储百万个以上的文件数据量

    *   廉价性

可以使用比较廉价的存储设备充当datanod的角色

 

3.2 缺点

1 不适合低延迟的数据访问 , 比如毫秒级的数据访问和数据存储

数据底层存储在不同的机器中, 并且大文件会被切块存储在不同的机器中, 读取数据极可能需要RPC远程网络请求获取数据 ,所以数据的访问时间比较长

2 不适合存储大量的小文件数据

  1. 每个数据文件在namenode中记录元数据信息,存储大量小文件增加namenode的压力,占用NN的内存,影响集群的整体存储能力!
  2. 大量小文件的寻址时间会超过读取时间(读取时间/寻址时间=100/1)

3 不支持并发写, 文件的随机修改

  1. 一个文件仅支持单个线程写 , 不支持多个线程写
  2. 仅支持数据的append操作 ,不支持数据的随机写

注意:HDFS文件系统适合一次写入多次读取的数据操作!主要用于存储数据!

猜你喜欢

转载自blog.csdn.net/qq_37933018/article/details/107174482