zoukankan      html  css  js  c++  java
  • HDFS简介

    课程链接:Hadoop大数据平台架构与实践--基础篇

    1.HDFS基本概念

    HDFS设计架构

    • 块(Block)文件被切分成块进行存储,默认大小为64MB,块是文件存储处理的逻辑单元(备份、查找)
    • NameNode是管理节点,存放文件元数据
    1. 文件与数据块的映射表
    2. 数据块与数据节点的映射表

      

      客户查询一个访问请求,那么会向上NameNode去查询元数据,返回的结果会知道文件存放在哪些节点上面,于是向这些节点去拿数据块,得到数据块后再组装拼接成想要的文件

    • DateNode是工作节点,存放数据块

      

    2.数据管理策略

    HDFS中数据管理与容错

    默认的数据块保留三份(多份冗余),其中两份在同一个机架上面

     心跳检测

    判断是否断机、宕机,NameNode也可知道哪些DataNode已经挂了

    SecondaryNameNode

    3.HDFS中文件的读写操作

    客户端(Java程序、命令行)发起文件读取请求(将文件名、路径告诉NameNode)

    NameNode查询元数据,返回客户端(文件包含哪些块,分别在哪些DataNode里可找到)

    客户端找到这些DataNode读取Blocks,下载下来后进行组装

    4.HDFS特点

    1. 数据冗余,硬件容错(允许运行在廉价机上的容错)
    2. 流式的数据访问(一次写入多次读取,写入之后不被修改,要修改只能删除后写入新的块)
    3. 存储大文件(如果太多小文件会使NameNode的负载压力比较大)

     适用性和局限性

    1. 适合数据批量读写,吞吐量高
    2. 不适合交互式应用,低延迟很难满足(不适合数据库)
    3. 适合一次写入多次读取,顺序读写
    4. 不支持多用户并发写相同文件
  • 相关阅读:
    读《SQL优化核心思想》:你不知道的优化技巧
    MySQL 索引建立原则及注意事项
    MySQL 捕获有问题的SQL-慢查日志 实例
    MySQL 分区间进行数据展示 实例
    MySQL 删除重复数据实例
    MySql 索引优化实例
    JDK1.6 Java.lang.Null.Pointer.Exception
    关于 MySQL LEFT JOIN 不可不知的事
    搞定queryString
    数据库不得不说的陷阱
  • 原文地址:https://www.cnblogs.com/exciting/p/9209801.html
Copyright © 2011-2022 走看看