HDFS的简介

分布式的文件系统,基于流数据模式访问和处理超大文件的分布式文件系统





Hadoop Distributed File System









HDFS的优点

处理超大文件

流数据访问

运行廉价的商用服务器上





HDFS的缺点

无法高效存储大量的小文件(元数据信息增大会造成NameNode的压力增大)

不适合处理低延迟的数据访问

不支持多用户对同一个文件的写入

不支持任意的修改





HDFS的特点

高容错性,三个副本,

可扩展和配置性(可以任意增加节点)

夸平台

机架感知

负载均衡

shell命令接口

安全模式(不允许写,监测数据块,不允许执行JOB)





HDFS的核心设计

数据块(Block):数据以块固定大小的方式进行存储,128M

数据复制:以块来进行复制,可以配置复制因子 默认是3个

数据副本的存放策略:

分布存储在不同的节点上

每个数据块保存默认是3个副本

同一个数据的三个副本的存放

第一个副本存在离客户端近的机架上的某一台节点上

第二个副本存在相邻或者另外一个机架上的某一台节点上

机架感知

心跳机制:从节点通过NodeManager 向主节点ResourceManager每隔3秒钟发送心跳数据(从节点的cup 内存 磁盘等等资源使用情况)

ResourceManager在心跳的返回值中分配任务和指令给从节点的NodeManager









HDFS的体系结构

主从架构

Master/Slave

NameNode(元数据管理和存放)

SecondaryNameNode(辅助NameNode将edit和fsimage文件进行合并,生成新的fsimage,然后将文件返回给NameNode)

DataNode 从节点,用来存放数据的



Write:向HDFS写入文件

客户端-------》ResourceManager

NameNode  DataNode

Client-----》NameNode (提供blockId的列表)

Client-----》DataNode



Read:向HDFS读取文件

Client-----》ResourceManager

NameNode  DataNode

Client-----》NameNode(文件的名字...)

Clinet-----》DataNode

HDFS的设计目标

监测故障和快速恢复

大规模数据集的处理

流式数据访问

简化一致性模型,一次写入,多次读取

移动计算要比移动数据的代价要低

在异构的平台上可以移植

通信协议是基于tcpip的ipc rpc协议

HDFS--笔记的更多相关文章

  1. HDFS笔记——技术点汇总

    目录 · 概况 · 原理 · HDFS 架构 · 块 · NameNode · SecondaryNameNode · fsimage与edits合并 · DataNode · 数据读写 · 容错机制 ...

  2. HDFS笔记(一)

    1. HDFS 是什么? Hadoop分布式文件系统(Distributed File System)-HDFS(Hadoop Distributed File System) 2. HDFS 架构 ...

  3. hdfs笔记

    Distributed File System 数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文 ...

  4. 【Hadoop】HDFS笔记(三):HDFS的Shell操作

    HDFS处理文件的命令和Linux命令差不多,但注意区分大小写. (Linux区分大小写,Windows不区分大小写) 一.fs命令 键入命令"./bin/hadoop fs"将输 ...

  5. 【Hadoop】HDFS笔记(二):HDFS的HA机制和Federation机制

    HA解决了HDFS的NameNode的单点问题: Federation解决了整个HDFS集群中只有一个名字空间,并且只有单独的一个NameNode管理所有DataNode的问题. 一.HA机制(Hig ...

  6. 【Hadoop】HDFS笔记(一):Hadoop的RPC机制

    RPC(Remote Procedure Call, 远程过程调用)主要面对两个问题: 1.对象调用方式: 2.序列/反序列化机制. Hadoop实现的RPC组件依赖于Hadoop Writable类 ...

  7. HDFS笔记(二)

    fsimage : NameNode启动时,对文件系统的快照 eidt logs : NameNode启动后,对文件系统的改动序列 namenode在全局里就一个进程,所以存在单点问题 DataNod ...

  8. 学习笔记—MapReduce

    MapReduce是什么 MapReduce是一种分布式计算编程框架,是Hadoop主要组成部分之一,可以让用户专注于编写核心逻辑代码,最后以高可靠.高容错的方式在大型集群上并行处理大量数据. Map ...

  9. Hadoop1.x HDFS系统架构

    1. HDFS中的一些概念1.1 数据块1.2 NameNode和DataNode1.2.1 管理者:Namenode1.2.1 工作者:Datanode1.3 Secondary Namenode1 ...

  10. HDFS Federation (读书笔记)

    HDFS Federation (读书笔记) HDFS的架构 HDFS包含两个层次:命名空间管理(Namespace) 和 块/存储管理(Block Storage). 命名空间管理(Namespac ...

随机推荐

  1. 详解AngularJS中的依赖注入

    点击查看AngularJS系列目录 依赖注入 一般来说,一个对象只能通过三种方法来得到它的依赖项目: 我们可以在对象内部创建依赖项目 我们可以将依赖作为一个全局变量来进行查找或引用 我们可以将依赖传递 ...

  2. 用css绘制各种图形

    1.用css绘制三角形 http://www.cnblogs.com/blosaa/p/3823695.html

  3. (译)通过 HTML、JS 和 Electron 创建你的第一个桌面应用

    原文:Creating Your First Desktop App With HTML, JS and Electron 作者:Danny Markov 近年来 web 应用变得越来越强大,但是桌面 ...

  4. Longge's problem poj2480 欧拉函数,gcd

    Longge's problem Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6918   Accepted: 2234 ...

  5. 【codevs1001】[bzoj1050]舒适的路线

    给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000).给你两个顶点S和T,求 一条路径,使得路径上最大边和最小边的比值最小. ...

  6. FPGA在AD采集中的应用

    AD转换,也叫模数转换,是将模拟信号转换为数字信号.目前包括电脑CPU,ARM,FPGA,处理的信号都只能是数字信号,所以数据信号在进入处理芯片前必须要进行AD转换. 在高速的AD转换中,FPGA以其 ...

  7. 通用table样式

    <html> <head> <title>通用table样式</title> <style type="text/css"&g ...

  8. IsKeyboardFocused -- 键盘焦点

    <Trigger Property="IsKeyboardFocused" Value="true"> <!--<Setter Prop ...

  9. Github Page--CSDN新人的第二选择

    我也是个CSDN新人,使用的CSDN的初衷应该和众人类似,就是想总结下平时的学习成果,或者一些想法. CSDN好的地方: 书写界面简洁,支持markdown语法 人还算多,也比较年轻 相对较活跃 内容 ...

  10. Linux下搭建svn服务端

    安装 使用yum安装非常简单: yum -y install subversion (压缩包安装比这麻烦的多) Tortoise本是window下客户端工具,但也可以建仓库,作为服务端.Linux只有 ...