zoukankan      html  css  js  c++  java
  • 大数据之--------hadoop存储(HDFS)

    Hadoop 的存储系统是 HDFS(Hadoop Distributed File System)分布式文件系统,对外部客户端而言,HDFS 就像一个传统的分级文件系统,可以进行创建、删除、移动或重命名文件或文件夹等操作,与 Linux 文件系统类似。

    Client客户端
        文件切片,文件上传的时候,Client对上传的文件进行切片成一个一个block,然后进行存储
        与namenode交互,获取文件位置信息
        与datanode交互,读取或写入数据
        Client 提供一些命令来管理 和访问HDFS,比如启动或者关闭HDFS。
    namenode
        管理HDFS的名称空间
        管理数据块的映射信息
        处理副本策略
        处理客户端的请求
        作用:
            1:namenode的元数据信息(文件名,目录,属性,每个文件的块列表)
            2:namenode文件操作  namenode负责文件元数据的操作
            3:namenode副本机制  文件的副本具体放在哪些datanode上是由namenode决定的
            4:namenode心跳机制  全权管理数据块的复制,周期性的接受心跳和块状态报告信息,每十分钟发送一次如果超过这个时间没有接受到请求会认为datanode已近宕机,会把数据块重新复制,块状态的报告包含所有数据块的列表每一小时发送一次
    datanode
        存储实际的数据块
        执行数据块的读/写操作
            作用:
                1:datanode以数据块的方式存储HDFS
                2:datanode响应hdfs客户端的读写请求
                3:datanode周期向namenode发送心跳请求
                4:datanode周期向namenode汇报数据块信息
                5:datanode周期性向namenode汇报缓存数据块信息
    seconddaynamenode
        辅助namenode,分担其工作量
        定期合并fsimage和fsedits,并推送给namenode
        紧急情况可以恢复namenode
    文件的副本机制
        一个文件有可能大于集群中的任意一块磁盘,引入块机制,可以很好地解决这个问题
        使用块作为文件存储的逻辑单位可以很好的简化存储系统
        块非常适用于数据备份从而提供数据的容错能力
    机架感知
        分布式文件存储系统内部有一个副本存放的策略
        第一个副本块存本机
        第二个副本快存同机架的其它服务器
        第三个副本快存放不同机架的服务器
  • 相关阅读:
    真机分享文件到虚拟机的centos 7 分享文件位置记录
    Linux系统列出某个用户组里的所有用户命令
    笔记之Linux命令vi
    笔记之Linux系统文件管理命令
    我的C#
    消息框
    ddt数据驱动在ui自动化中的应用二【多测师】
    ddt数据驱动在ui自动化中的应用一【多测师】
    基于ddt+unittest+Excel做接口测试自动化测试【多测师】
    Python操作MD5加密【多测师】
  • 原文地址:https://www.cnblogs.com/BaiChunLong/p/11557058.html
Copyright © 2011-2022 走看看