美文网首页
HDFS 基本概念

HDFS 基本概念

作者: 青木石 | 来源:发表于2016-10-21 15:48 被阅读26次

    date: 2016-10-21 15:34
    tags:HADOOP



    ** hdfs的由来:由于数据越来越多,单个操作系统/服务器的磁盘存放不下,于是,需要将这些数据存放在其他的操作系统或者服务器上,但是这样就会出现维护、管理不方便,需要一个分布式文件系统来管理,给用户一个单机操作的便捷性。
    ** hdfs:
    一种分布式文件系统 ,文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间源自谷歌三篇论文中的GFS分布式文件系统。
    特点:通透性(由程序与用户看来,就像是访问本地的磁盘一般。),容错性(冗余副本策略)
    ** 概括要点:**
    1. 源自GFS
    2. 分布式文件系统
    3. 块存储,可以并发式读取
    4. Namenode+datanode+secondaryNamenode
    5. 文件数据一次追加,多次读写,不可修改
    6. Master/slaves结构。(Master_Namenode\ slaves_datanode)


    ** Namenode:(名字节点,元数据节点)**
    *** 相关文件:**

     Fsimage:元数据镜像文件,存储某一时段NameNode 内存元数据
    Edits:操作日志文件
    Fstime:保存上一次checkpoint的时间
    以上的文件均在Linux文件系统中
    

    ** 职责:*

      1.分配并记录文件的块信息和块的位置信息,这些信息即为元数据。
    2.将元数据的信息放入到fsimage中,每次保存fsimage之后到下一次保持之间的所有hdfs操作,记录在edits中。
    3.被动接收datanode的heartbeat信息,记录datanode的block信息
    4.将命令通过心跳包返回给datanode去。
    

    ** Datanode:(数据节点)**
    多副本(默认是3分,在hdfs-site.xml 文件中设置),保证数据安全性。
    文件块存储:最基本的存储单位
    ** 职责:**
    1.数据的处理(读写复删)
    2.将块的实时定时通过心跳传递个Namenode,并等待Namenode的指令


    ** Namenode 与SecondaryNamenode的关系**

    ①secondary namenode通知namenode切换edits文件
    ②secondary namenode从namenode获得fsimage和edits(通过http)
    ③secondary namenode将fsimage载入内存,然后开始合并  edits
    ④secondary namenode将新的fsimage发回给namenode
    ⑤namenode用新的fsimage替换旧的fsimage
    

    ** 什么时候checkpiont**

    • fs.checkpoint.period 指定两次checkpoint的最大时间间隔,默认3600秒。
    • fs.checkpoint.size 规定edits文件的最大值,一旦超过这个值则* 强制checkpoint,不管是否到达最大时间间隔。默认大小是64M。

    相关文章

      网友评论

          本文标题:HDFS 基本概念

          本文链接:https://www.haomeiwen.com/subject/hlhcuttx.html