本文原创,转载注明作者和原文链接!

一:总结注意点:

到现在为止学习到的角色:三个NameNode、SecondaryNameNode、DataNode

    1.存储的是每一个文件分割存储之后的元数据信息。具体的信息有:

    2.而且NameNode的存储是内存存储的,不会有和磁盘的数据交换的过程,这样的话提高了整体的集群的效率,但是这个数据都是需要持久化的,因为不持久化的话,数据是不安全的,加假如哪一天hadoop集群中的NameNode那台服务器挂了的话,里面的元数据如果只是存储在内存中的就全部的丢失了,这样会导致所有的DataNode中的块数据都会报废掉,因为都不知道哪个结点的那个块是属于原始存储的哪个文件了,所以nameNode中会有一个元数据持久化的过程。

具体的持久化过程:在集群format也就是搭建的过程中,会产生一个fsimage,之后在启动集群之后,会根据客户端的指令,产生一个edits log文件,之后集群系统会有机制去限制edits log文件的大小,不超过某个可以我们规定的大小,每天HDFSClient客户端发送指令的时候,edits log日志文件都会记录,直到达到系统中的checkpoint点,NameNode会将edits log文件和fsimage交给SecondaryNameNode去将两者有效的结合,之后回交给NameNode,NameNode会将之前拥有的那个edits log文件删除掉,当产生第二主节点返回结合体之后,会将之前的fsimage替换掉,这就是一次edits log文件和fsimage结合的过程,具体的可以看结合过程 另一篇博文hadoop学习笔记(一):NameNade持久化和DataNode概

    3.只要是已经存储到HDFS分布式文件存储系统中的数据块之后,就不能改变大小了,因为如果改变其中某个文件分割成的某块数据的话,其他的副本都要变,这样就会无形之中给集群添加很多压力。

    4.具体的文件块的大小:对于同一个源数据来说的话,他所分割的各个块的大小都必须是一样的,但是对于不同的源文件的之间的话,分割存储时候分割成的块的大小可以是不一样的

    5.DataNode   中具体存储的源文件的block数据块,就是在服务器中的文件目录中存储的,并没有涉及到内存存储的问题

    6.DataNode也会存储一部分元数据信息:如每一个数据块都会有一个md5  信息,用于每次下载数据块的时候去和上传的时候存储的那个MD5码进行比较,来判断这块数据块是不是还是完整的,如果上传的时候的MD5和下载的时候的MD5码是一样的,则就认为是可用的块。

    7.具体的数据块需要多少个副本,这个可以根据这个块的使用量去定,如果这个块的访问量高的话,可以多存储副本,相反可以少存储副本,但是一本默认的副本的数量是3块

    8.hadoop这个集群,都计算的框架向文件的存储位置进行移动的,而不是文件想计算框架移动,因为前者的资源消耗更低

    9.在集权运行的过程中,NameNode和DataNode是时刻保持着心跳的联系的,DataNode会隔多长时间向主结点汇报自己身上存储的块的状态信息,以保证客户端访问主结点的时候,主结点能够正确的告诉客户端你要找的数据在哪太dataNode结点之上。

    10.安全模式:指的即时fsimage和edits log文件的对于NameNode状态恢复机制

二、HDFS文件权限的分配问题

其中的POSIX标准和window‘linux系统的那种文件的权限策略差不多,但是还是有区别的,因为HDFS是文件系统,而后面的window和linux是操作系统,

具体的hdfs的权限:当访问HDFS的时候,有什么权限的人访问,就会赋予这个人在HDFS系统中什么样的操作权限。

三 、安全模式

hadoop学习笔记(四):HDFS文件权限,安全模式,以及整体注意点总结的更多相关文章

  1. Hadoop学习笔记之二 文件操作

    HDFS分布式文件系统:优点:支持超大文件存储.流式访问.一次写入多次读取.缺点:不适应大量小文件.不适应低时延的数据访问.不适应多用户访问任意修改文件. 1.hadoop用于大数据处理,在数据量较小 ...

  2. Hadoop学习笔记: HDFS

    注:该文内容部分来源于ChinaHadoop.cn上的hadoop视频教程. 一. HDFS概述 HDFS即Hadoop Distributed File System, 源于Google发表于200 ...

  3. Hadoop学习笔记(2)-HDFS的基本操作(Shell命令)

    在这里我给大家继续分享一些关于HDFS分布式文件的经验哈,其中包括一些hdfs的基本的shell命令的操作,再加上hdfs java程序设计.在前面我已经写了关于如何去搭建hadoop这样一个大数据平 ...

  4. Hadoop学习笔记(1):概念和整体架构

    Hadoop简介和历史 Hadoop架构体系 Master和Slave节点 数据分析面临的问题和Hadoop思想 由于工作原因,必须学习和深入一下Hadoop,特此记录笔记. 什么是hadoop? A ...

  5. Hadoop学习笔记四

    一.fsimage,edits和datanode的block在本地文件系统中位置的配置 fsimage:hdfs-site.xml中的dfs.namenode.name.dir  值例如file:// ...

  6. hadoop学习笔记贰 --HDFS及YARN的启动

    1.初始化HDFS :hadoop namenode -format 看到如下字样,说明初始化成功. 启动HDFS,start-dfs.sh 终于启动成功了,原来是core-site.xml  中配置 ...

  7. hadoop学习笔记(四)——eclipse+maven+hadoop2.5.2源代码

    Eclipse同maven进口hadoop源代码 1)  安装和配置maven环境变量 M2_HOME: D:\profession\hadoop\apache-maven-3.3.3 PATH: % ...

  8. 【linux学习笔记四】文件搜索命令

    一 文件搜索 locate //在后台数据库中按文件名搜索 搜索速度更快 locate 文件名 //locate命令所搜索的后台数据库 /var/lib/mlocate //更新数据库 updated ...

  9. Hadoop学习笔记(三) ——HDFS

    参考书籍:<Hadoop实战>第二版 第9章:HDFS详解 1. HDFS基本操作 @ 出现的bug信息 @-@ WARN util.NativeCodeLoader: Unable to ...

随机推荐

  1. try_except_finally

    blog: python中的try/except/else/finally  python文档:错误和异常 与其他语言相同,在python中,try/except语句主要是用于处理程序正常执行过程中出 ...

  2. zabbix4.4.2安装部署

    1.下载阿里的源,执行 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 2 ...

  3. 1.spring异常:Caused by: java.lang.NoClassDefFoundError: org/aopalliance/intercept/MethodInterceptor

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springfr ...

  4. SQLserver各种时间取值格式

    叫大哥 SQLServer提取日期中的年月日及其他格式 SQLServer提取日期中的年月日及其他格式   提取年:datepart(yy,getdate())提取月:datepart(mm,getd ...

  5. C++——绪论

    计算机语言的发展 1.机器语言(二进制).汇编语言.比较难以理解和识记,与人类语言之间的差距太大: 2.高级语言,可以写出类似于人类思维的语句,可以有人们习惯的表达方式: 3.面向对象的语言,描述客观 ...

  6. python3练习100题——019

    原题链接:http://www.runoob.com/python/python-exercise-example19.html 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数&q ...

  7. POJ3122 Pie(二分)

    题目链接:http://poj.org/problem?id=3122 题意:一堆人分蛋糕,每人蛋糕大小一样,求最大能分多少,蛋糕必须是整块整块的,不能两块拼一起.然后注意输入F个人最后要分F+1份. ...

  8. jmeter 登陆--查询存在否-->新建客户-->查询存在否 + 压测

    1.登陆 正则表达式提取器和json提取器,都是后置处理器提取token(都可以在响应中以regexp tester 和 json path tester查看提取的对不对) beanshell 后置处 ...

  9. Git 时光穿梭机

    git log 提交日志 git reflog 命令日志 git status 查看状态 管理修改 git diff 工作区与暂存区 git diff master 工作区与版本库 git diff ...

  10. Ubuntu16.04配置

    一.将源更换为国内的源,这样下载和更新软件的速度会快很多.将/etc/apt/sources.list文件的内容更换为如下: #默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消 ...