• HDFS架构设计


    HDFS架构设计
    进程
    namenode nn 名称节点
    secondary namenode snn 第二名称节点
    datanode dn 数据节点

    主从架构
    Rack : 机架 可以放多个主机 10个 GPU主机 5个

    nn: 文件系统的命名空间
    a.文件名称
    b.文件目录结构
    c.文件属性 创建时间 权限 副本数
    d.文件对应哪些数据块
    -->数据块对应哪些datanode节点上
    blockmap
    nn节点不会持久化存储这种映射关系
    dn定期发送blockreport 给nn,
    以此nn在【内存】中动态维护这种映射关系!

    假设 nn 8G内存,如果小文件很多会撑爆了内存

    (生产上 hdfs不适合存储小文件?为什么不合适?如果真的有小文件,该怎么办?该怎么合并)
    1个小文件: nn节点需要250字节
    1亿: 1亿*250字节 大

    假如真的有小文件 合并
    100小文件合并一个大文件 : nn节点需要300字节
    1亿/100 * 300字节 小

    建议: 合并为一个文件尽量在块大小 120m <=128m

    作用:
    管理文件系统的命名空间,
    维护文件系统树,以两种文件永久保存在磁盘上
    命名空间镜像文件 fsimage
    编辑日志editlog
    [root@hadoop001 current]# pwd
    /tmp/hadoop-root/dfs/name/current
    [root@hadoop001 current]# ll
    total 1040
    -rw-r--r--. 1 root root 1048576 Feb 17 20:23 edits_inprogress_0000000000000000001
    -rw-r--r--. 1 root root 321 Feb 17 19:23 fsimage_0000000000000000000
    -rw-r--r--. 1 root root 62 Feb 17 19:23 fsimage_0000000000000000000.md5
    -rw-r--r--. 1 root root 2 Feb 17 19:23 seen_txid
    -rw-r--r--. 1 root root 219 Feb 17 19:23 VERSION
    [root@hadoop001 current]#

    dn:
    存储: 数据块 和数据块的校验和
    与nn通信:
    a.每隔3秒发送一个心跳
    hadoop001:50070
    b.每10次心跳发送一次当前节点的blockreport
    作用: 读写文件的数据块

    snn:
    存储: fsiamge+editlog
    作用: 定期合并fsimage+editlog文件为新的fsimage文件
    推送个nn节点,简称为检查点 checkpoint
    参数 :
    dfs.namenode.checkpoint.period 3600s

    snn对nn每一小时备份一次,如果nn在12点30挂了,文件损坏,那么12点到12点半的数据相当于的数据snn没有备份,用snn恢复只能恢复到12点的数据,所以这种架构是不可靠的,这种架构是在hadoop1.x上的架构,后边有出现了HA,他有两个nn,做了实时的热备,snn相当于做了一个冷备,HA如果一个节点nn挂了,另一个nn瞬间起来,对外提供服务。

    editlog: 读写的记录  
    fsiamge: 读写的记录

    所在目录/tmp/hadoop-root/dfs/name/current

    secondarynamenode就是用来备份编辑日志和镜像文件的

  • 相关阅读:
    python 字符串前面加u,r,b的含义
    文本检测: CTPN
    ocr 识别 github 源码
    python 中写hive 脚本
    Win10 环境安装tesseract-ocr 4.00并配置环境变量
    OCR 识别原理
    pandas set_index和reset_index的用法
    整理 pandas 常用函数
    js es6 map 与 原生对象区别
    js 暂时性死区
  • 原文地址:https://www.cnblogs.com/xuziyu/p/10426399.html
Copyright © 2020-2023  润新知