zoukankan      html  css  js  c++  java
  • HDFS组成架构和读写数据流程

    HDFS组成架构

    NameNode
    1. 管理HDFS的名称空间
    2. 配置副本策略,fsimage和edit
    3. 管理数据块block映射信息
    4. 处理客户端读写请求
    DataNode
    1. 存储实际的数据块
    2. 执行数据块的读写操作
    Client
    1. 文件切分,split成block
    2. 与NameNode交互,获取数据块位置信息
    3. 与DataNode交互,读写或写入数据
    4. 通过Shell管理HDFS,操作HDFS
    SecondaryNameNode
    1. 合并镜像和编辑日志,fsimage和edit,帮助NameNode备份
    2. 紧急情况下,充当NameNode

    HDFS写数据流程

    1. 客户端向NameNode请求上传文件
    2. NameNode返回确认信息
    3. 客户端发送文件大小等信息,需要几个block
    4. NameNode返回DataNode节点,一般为3个
    5. 客户端向DataNode1请求上传数据,DataNode1收到请求后,向DataNode2发送,DataNode2向DataNode3发送
    6. 3个DataNode逐渐答应请求,完成通信管道建立
    7. 客户端向数据节点1发送第一个Block数据,数据节点1接收后发送给数据节点2,数据节点2发送数据节点3,完成备份
    8. 传输完毕后,关闭通信,结束写数据流程

    其中,第一个副本随机一个,第二个副本和第一个副本同一个机架,第三个副本位于不同机架,随机节点。

    HDFS读数据流程

    1. 客户端向名称节点请求读文件,通过元数据得到数据所在的数据节点
    2. 向数据节点请求读数据
    3. 数据节点传输数据给客户端
    4. 接收完毕,关闭连接
  • 相关阅读:
    Golang
    Linux美化终端
    MetaSploit Pro 下载地址
    otunnel : 一个和lcx差不多的端口转发的工具
    MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption 2017-05-18 16:45
    黑客军火库
    图片后门捆绑利用工具 – FakeImageExploiter
    给自己的QQ群开启腾讯官方的群聊机器人
    ImportError: No module named Crypto.Cipher
    内网渗透小技巧
  • 原文地址:https://www.cnblogs.com/chenshaowei/p/12402329.html
Copyright © 2011-2022 走看看