zoukankan      html  css  js  c++  java
  • 大数据笔记(二)——Apache Hadoop的体系结构

    一.分布式存储

    • NameNode(名称节点)

        1.维护HDFS文件系统,是HDFS的主节点。

        2.接收客户端的请求:上传、下载文件、创建目录等。

     

        3.记录客户端操作的日志(edits文件),保存了HDFS最新的状态

          1)Edits文件保存了自最后一次检查点之后所有针对HDFS文件系统的操作,比如:增加文件、重命名文件、删除目录等

          2)保存目录:$HADOOP_HOME/tmp/dfs/name/current

        可以使用 hdfs oev -i 命令将日志(二进制)输出为 XML文件

         hdfs oev -i  edits_inprogress_0000000000000005499  -o ~/temp/log.xml

        4.维护文件元信息,将内存中不常用的文件元信息保存在硬盘上(fsimage文件)

          1)fsimage是HDFS文件系统存于硬盘中的元数据检查点,里面记录了自最后一次检查点之前HDFS文件系统中所有目录和文件的序列化信息

          2)保存目录:edits

               3)可以使用 hdfs oev -i 命令将日志(二进制)输出为 XML文件

    • DataNode(数据节点)

        1.以数据块为单位,保存数据

           1)Hadoop1.0的数据块大小:64M

              2)Hadoop2.0的数据库大小:128M

          2.在全分布模式下,至少两个DataNode节点

                    3.数据保存的目录:由 hadoop.tmp.dir 参数指定

    • Secondary NameNode(第二名称节点)

        1.主要作用:合并日志

        2.合并时机:HDFS发出检查点的时候

        3.日志合并过程:

    • HDFS存在的问题

        1)NameNode单点故障问题

           解决方案:Hadoop2.0中,使用Zookeeper实现NameNode的HA功能

        2)NameNode压力过大,且内存受限,影响系统扩展性

         解决方案:Hadoop2.0中,使用NameNode联盟实现水平扩展

    二.YARN:分布式计算(MapReduce)

      

    • ResourceManager(资源管理器)

         1.接收客户端的请求,执行任务

         2.分配资源

         3.分配任务

    • NodeManager(节点管理器:运行任务 MapReduce)

       从 DataNode上获取数据,执行任务

    三.HBase的体系结构

      

  • 相关阅读:
    sql语句游标的写法
    oracle的安装与plsql的环境配置
    oracle中创建表时添加注释
    jsp中Java代码中怎么获取jsp页面元素
    sql模糊查询
    jQuery循环给某个ID赋值
    Codeforces Round #671 (Div. 2)
    TYVJ1935 导弹防御塔
    Educational Codeforces Round 95 (Rated for Div. 2)
    Codeforces Round #670 (Div. 2)
  • 原文地址:https://www.cnblogs.com/lingluo2017/p/8456008.html
Copyright © 2011-2022 走看看