zoukankan      html  css  js  c++  java
  • hadoop-HDFS概述

    HDFS产生背景

      随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理。HDFS只是分布式文件管理系统中的一种;

    HDFS是什么

      HDFS是基于java的分布式文件系统,允许您在hadoop集群中的多个节点上存储大量数据。它专门存储超大数据文件,为整个hadoop生态圈提供了基础的存储服务;

      HDFS的使用场景:适合一次写入,多次读出的场景,且不支持文件的修,改,适合使用做数据分析,并不适合用来做网盘应用;

      HDFS是一个主从体系架构,由于分布式存储的性质,集群拥有两类点NameNode和DataNode;

          

        NameNode(nn):就是master,它是一个主管,管理者;

            1.管理HDFS的名称空间;

            2.配置副本策略;

            3.管理数据块(block)映射信息;

            4.处理客户端读写请求;

        DataNode(数据节点):就是slave,NameNode下达命令,DataNode执行实际操作;

            1.存储实际的数据块;

            2.执行数据库的读/写操作;

        Client:就是客户端

            1.文件切分。文件上传HDFS的时候,Client将文件切分成一个一个的block,然后进行上传;

            2.与NameNode交互,获取文件的位置信息;

            3.与DataNode交互,读取或者写入数据;

            4.Client提供一些命令来管理HDFS,比如N阿么Node格式化;

            5.Client可以通过一些命令来访问HDFS,比如对HDFS增删改查操作;

        Secondary NameNode:并非NAMENoel的热备。当NAMENoel挂掉的时候,它并不能马上体寒NameNode并提供服务;

            1.辅助NameNode,分担其工作量,比如定期合并Fsimage和Edits,并推送给NameNode;

            2.在紧急情况下,可复制恢复NameNode;

    HDFS优点  

      高容错性:

        1.数据自动保存多个副本。它通过增加副本的形式,提供容错性;

        2.某一个副本丢失以后,它可以自动恢复;

      适合大数据处理:

        1.能够处理数据规模达到GB,TB,甚至PB级别的数据;

        2.能够处理百万规模以上的文件数量,数量相当之大;

      流式文件访问:一次性写入,多次读取,保证数据一致性;

      可构建在廉价机器上:通过多副本提供高可靠性,提供容错和恢复机制;

    HDFS缺点

      不适合低延迟数据访问场景:比如毫秒级,低延迟与高吞吐率;

      不适合小文件存取场景:占用NameNode大量内存;

      不适合并发写入,文件随机修改场景:一个文件只能有一个写者;

    HDFS文件块大小

      HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数(dfs.blocksize)来规定,默认大小在hadoop2.x版本中是128M,老版本中是64M;

        

       为什么块的大小不能设置大小,也不能设置太大?

        1.HDFS的快设置大小,会增加寻址时间,程序一直在找块的开始位置;

        2.如果块设置的太大,从磁盘传输的时间会明显大于定位这个块开始位置所需的时间。导致程序在处理这块数据时,会非常慢;

        总结:HDFS块的大小设置主要取决于磁盘传输速率;

  • 相关阅读:
    多线程---同步函数的锁是this(转载)
    函数
    流程控制
    基本语句和运算
    基本数据库类型
    迷宫问题
    Dungeon Master(逃脱大师)-BFS
    HTML元素常用属性整理
    Java_hutool 发起请求
    jQuery Autocomplete
  • 原文地址:https://www.cnblogs.com/wnwn/p/12530678.html
Copyright © 2011-2022 走看看