1.设计基础目标

  (1) 错误是常态,需要使用数据冗余

   (2)流式数据访问。数据批量读而不是随机速写,不支持OLTP,hadoop擅长数据分析而不是事物处理。

   (3)文件采用一次性写多次读的模型,文件一旦写入就无法修改。所以一致性模型非常简单。

   (4)程序采用 数据就近 原则分配节点执行。(MapReduce)

2.hdf体系结构 

   

  hadfs设计十分简单,在我的1个master和两个slave节点的集群中,通过jps,可以查看在master节点上运行着SecondaryNameNode ,NameNode,JobTracker

  在slave结点上运行着DataNode和TaskTracker进程

 1.NameNode:管理文件系统的命名空间,记录每个文件数据快在各个DataNode上的位置和副本信息,记录命名空间内的改动或空间本身属性的改动;协调客户端对文件的访问;

           NameNode使 用事物日志记录HDFS元数据的变化,使用映像文件存储文件系统的命名空间

  2.DataNode:管理存储节点,一次写入,多次读取,不支持修改。文件由数据块组成,包括文件映射,文件属性。默认的数据块大小为64MB,数据块尽量散布在各个节点中,负载均衡。

  3.读取数据流程:客户端要访问HDFS中的文件,首先从NameNode获取组成这个文件的数据块位置列表,根据数据块位置列表,知道存储数据块的DataNode,访问DataNode获取数据,NameNode并不参与数据实际传输

3.HDFS分布式文件系统的可靠性 

  • 副本冗余:在hdfs-site.xml中可以设置副本的数量,DataNode启动时,首先会遍历本地的文件系统,产生一份hdfs数据块和本地文件的对应关系列表(blockreport)汇报给namenode。
  • 机架策略:通过“机架感知”,将数据块副本存储在不同的机架中。
  • 心跳机制:NameNode周期性的从datanode接受心跳信号和块报告。根据块报告验证元数据,副本数量、磁盘错误、节点宕机。
  • 安全模式:NameNode启动时会经过“安全模式”阶段,安全模式不会产生数据写。可以通过命令强制集群进入安全模式。
  • 校验和:文件创立的时候,每个文件都会产生校验和,校验和会作为一个隐藏文件保存在命名空间下,客户端获取数据时可以检查校验和是否相同,从而法相数据块是否损坏。
  • 回收站:HDFS提供回收站功能。
  • 元数据保护:映像文件和事物日志是Namenode的核心数据。可以配置为拥有多个副本,副本会降低Name的处理速度,但是增加安全性。
  • 快照

 4.HDFS文件操作(命令行操作和API调用的方式)

列出文件:hadoop dfs -ls 后可接上目录

 文件上传:hadoop dfs -put  本地文件  hdfs目录

 文件复制到本地:hadoop dfs -get

 文件删除:hadoop dfs -rmr 目录或文件名

 文件查看:hadoop dfs -cat 文件名

查看HDFS的基本统计信息:hadoop dfsasmin -report

进入/退出安全模式:hadoop dfsadmin -safemode enter/leave

5.增加节点

  • 在新节点安装好hadoop
  • 把namenode的有关配置文件复制到该节点
  • 修改masters和slaves文件,增加该节点
  • 设施ssh免密码进入该结点
  • 单独启动该节点上的datanode和tasktracker(hadoop-daemon.sh start datanode/tasktracker)
  • 运行start-balancer.sh进行负载均衡。

    

  

认识HDFS分布式文件系统的更多相关文章

  1. HDFS分布式文件系统资源管理器开发总结

      HDFS,全称Hadoop分布式文件系统,作为Hadoop生态技术圈底层的关键技术之一,被设计成适合运行在通用硬件上的分布式文件系统.它和现有的分布式文件系统有很多共同点,但同时,它和其他的分布式 ...

  2. 通过Thrift访问HDFS分布式文件系统的性能瓶颈分析

    通过Thrift访问HDFS分布式文件系统的性能瓶颈分析 引言 Hadoop提供的HDFS布式文件存储系统,提供了基于thrift的客户端访问支持,但是因为Thrift自身的访问特点,在高并发的访问情 ...

  3. Hadoop HDFS分布式文件系统 常用命令汇总

    引言:我们维护hadoop系统的时候,必不可少需要对HDFS分布式文件系统做操作,例如拷贝一个文件/目录,查看HDFS文件系统目录下的内容,删除HDFS文件系统中的内容(文件/目录),还有HDFS管理 ...

  4. Hadoop基础-HDFS分布式文件系统的存储

    Hadoop基础-HDFS分布式文件系统的存储 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HDFS数据块 1>.磁盘中的数据块 每个磁盘都有默认的数据块大小,这个磁盘 ...

  5. 1、HDFS分布式文件系统

    1.HDFS分布式文件系统 分布式存储 分布式计算 2.hadoop hadoop含有四个模块,分别是 common. hdfs和yarn. common 公共模块. HDFS hadoop dist ...

  6. 我理解中的Hadoop HDFS分布式文件系统

    一,什么是分布式文件系统,分布式文件系统能干什么 在学习一个文件系统时,首先我先想到的是,学习它能为我们提供什么样的服务,它的价值在哪里,为什么要去学它.以这样的方式去理解它之后在日后的深入学习中才能 ...

  7. 大数据基础总结---HDFS分布式文件系统

    HDFS分布式文件系统 文件系统的基本概述 文件系统定义:文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易. 文件名:在文件系统中,文件名是用于定位存储位置. 元数据(Metad ...

  8. hdfs(分布式文件系统)优缺点

    hdfs(分布式文件系统) 优点 支持超大文件 支持超大文件.超大文件在这里指的是几百M,几百GB,甚至几TB大小的文件.一般来说hadoop的文件系统会存储TB级别或者PB级别的数据.所以在企业的应 ...

  9. 【史上最全】Hadoop 核心 - HDFS 分布式文件系统详解(上万字建议收藏)

    1. HDFS概述 Hadoop 分布式系统框架中,首要的基础功能就是文件系统,在 Hadoop 中使用 FileSystem 这个抽象类来表示我们的文件系统,这个抽象类下面有很多子实现类,究竟使用哪 ...

随机推荐

  1. [Erlang34]erlang.mk的源码阅读1-入门makefile

    通过erlang.mk项目,掌握基本的makefile语法,可以自己定制makefile. 1. makefile 基本规则: 1. 所有的源文件没有被编译过,则对各个源文件进行编译并进行链接,生成最 ...

  2. windows通过命令方式解压zip文件

    1.需要下载unzip 地址:http://gnuwin32.sourceforge.net/packages/unzip.htm 下载exe版本 2.安装后将bin目录下的unzip.exe文件放在 ...

  3. .net程序员书单

    C# 基础 <CLR via C#> <c# 高级编程> 框架学习 <WPF编程宝典 > (英文名:<Pro WPF 4.5 in C#. Windows P ...

  4. Regular进阶: 几点性能优化的建议

    本文由作者郑海波授权网易云社区发布. 本文旨在用 20% 的精力解决使用Regular过程中 80% 的性能问题. 这里大部分是关于脏检查的性能优化,不了解的可以先看下<Regular脏检查介绍 ...

  5. Codeforces Beta Round #75 (Div. 1 Only) B. Queue 二分

    B. Queue Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 codeforces.com/problemset/problem/91/B Descrip ...

  6. Spring框架注解

    这四个注解,功能都是一样的,都是用来创建对象的. 但是为什么有这么四个吗?Spring中提供了三个@Component的衍生注解:(功能目前来讲是一样的) @Controller      :WEB层 ...

  7. COGS1752. [BOI2007]摩基亚Mokia(CDQ,树状数组)

    题目描述 摩尔瓦多的移动电话公司摩基亚(Mokia)设计出了一种新的用户定位系统.和其他的定位系统一样,它能够迅速回答任何形如“用户C的位置在哪?”的问题,精确到毫米.但其真正高科技之处在于,它能够回 ...

  8. 九,php中上传文件

    1,php网页上传文件大小有限制的,默认最大2M.可以修改php.ini调节大小,upload_max_filesize = 2M.网页上传使用http协议,上传大文件性能不好:有些公司做一个客户端软 ...

  9. 【算法笔记】A1071 Speech Patterns

    1071 Speech Patterns (25 分)   People often have a preference among synonyms of the same word. For ex ...

  10. .NET熔断之Polly

    1. Net Core 中有一个被.Net 基金会认可的库 Polly,可以用来简化熔断降级的处理.主要功能:重试(Retry):断路器(Circuit-breaker):超时检测(Timeout): ...