Block 块存储

所有的文件都是以 block 块的方式存放在 HDFS 文件系统当中, 在 Hadoop1 当中, 文件的 block 块默认大小是 64M, hadoop2 当中, 文件的 block 块大小默认是 128M, block 块的大小可以通过 hdfs-site.xml 当中的配置文件进行指定

<property><name>dfs.block.size</name><value>块大小 以字节为单位</value>
</property>

引入块机制的好处

  1. 一个文件有可能大于集群中任意一个磁盘
  2. 使用块抽象而不是文件可以简化存储子系统
  3. 块非常适合用于数据备份进而提供数据容错能力和可用性

块缓存

通常 DataNode 从磁盘中读取块, 但对于访问频繁的文件, 其对应的块可能被显式的缓存在 DataNode 的内存中, 以堆外块缓存的形式存在. 默认情况下,一个块仅缓存在一个 DataNode 的内存中,当然可以针对每个文件配置 DataNode 的数量. 作业调度器通过在缓存块的 DataNode 上运行任务, 可以利用块缓存的优势提高读操作的性能.

例如:

连接(join) 操作中使用的一个小的查询表就是块缓存的一个很好的候选

用户或应用通过在缓存池中增加一个 Cache Directive 来告诉 NameNode 需要缓存哪些文件及存多久. 缓存池(Cache Pool) 是一个拥有管理缓存权限和资源使用的管理性分组.

例如一个文件 130M, 会被切分成 2 个 block 块, 保存在两个 block 块里面, 实际占用磁盘 130M 空间, 而不是占用256M的磁盘空间

HDFS 文件权限验证

HDFS 的文件权限机制与 Linux 系统的文件权限机制类似

r:read  w:write  x:execute

权限 x 对于文件表示忽略, 对于文件夹表示是否有权限访问其内容 如果 Linux 系统用户 zhangsan 使用 Hadoop 命令创建一个文件, 那么这个文件在 HDFS 当中的 Owner 就是 zhangsan HDFS 文件权限的目的, 防止好人做错事, 而不是阻止坏人做坏事. HDFS相信你告诉我你是谁, 你就是谁

HDFS的块缓存和访问权限相关推荐

  1. arcgis server账号需要设置地图缓存的访问权限

    如果gis服务起不来,那么可以看看arcgis server账号有没有设置地图缓存的访问权限,有可能arcgis server账号没有这个文件夹的访问权限.  本文用菊子曰发布 转载于:https:/ ...

  2. L型代码结构案例:Link访问权限(上)

    这是松结对编程的第20篇(专栏目录). 本文探讨Link访问权限的最佳实现方法,力求外观干净且封装良好. 这些代码将位于L型代码结构(参见松结对编程系列中的定义)的下层,调用者无需理解其原理. 顺便说 ...

  3. WORKGROUP无法访问,您可能没有权限使用网络资源,请与这台服务器的管理员联系以查明您是否有访问权限。

    "网上邻居"无法互访问题解决方法大全    总结起来基本上有下面的几个: 1,没有共享资源/共享服务未启用. 症状:电脑与电脑间可以Ping通,但无法访问共享资源,在"计 ...

  4. 给Elasticsearch 和Kibana添加基于角色的访问权限控制

    给ELK 添加Shield权限控制 背景 这两天整个项目(电商SAAS系统)上线后,由于系统变得很大,每天产生的业务日志.访问日志.数据库慢查询.php等语言日志,都分布在不同的机器上,所以需要统一收 ...

  5. java平台类成员访问修饰符_JAVA类的修饰符及访问权限

    1.类 外部类      class前的修饰符只能有public final abstrct 无(默认) :同包可见  (Eclipse中选择package) 内部类      class前的修饰符有 ...

  6. [Golang学习笔记] 05 程序实体2 作用域访问权限和变量重声明

    作用域访问权限: 程序实体访问权限(作用域)有三种: 1. 包级私有(代码包) 2. 模块级私有(代码包) 3. 公开(全域). 一个函数是一个代码块. 一个程序实体的作用域总是会被限制在某个代码块中 ...

  7. linux FTP服务器访问权限的问题

    当我们搭建好一个FTP服务器后,接下去的工作就是要对这个服务器进行权限的管理与设置.因为这项工作直接关系到FTP服务器上文件的安全,关系到FTP服务器运行的稳定.所以,作为企业的网络管理员,不能够忽视 ...

  8. android 静态方法 构造方法,android基础-Java篇02:类和对象、构造方法、访问权限控制、重载、this关键字、static关键字...

    一.类和构造方法 (类和对象在百度百科已经有详细的介绍,这里只做简单的描述以及帮助理解:百度百科:类和对象,需要注意的是,百度百科类和对象的举例中都是C++,书写格式不要和Java混淆!) 什么是类? ...

  9. JavaSE——面向对象进阶(封装、this、static、代码块、包、权限修饰符、main方法详解)

    第2节 面向对象进阶 一.封装与private 概述: 封装的意义在于保护或者防止代码(数据)被我们无意中破坏.保护成员属性,不让类以外的程序直接访问和修改. 封装原则: 隐藏对象的属性和实现细节,仅 ...

最新文章

  1. 推荐8个实用性十足,但是很小众的手机APP
  2. 洛谷——P1044 栈
  3. java.lang.RuntimeException: Handler (com.***.behavior.BEvent$1) {421bca80} sending message to a Hand
  4. Git:与GitHub搭配及SSH登录
  5. 数据结构之C语言模拟整数数组实现
  6. Highlight – 代码高亮html输出软件
  7. [leetcode-412-Fizz Buzz]
  8. Android ContentProvider、ContentResolver和ContentObserver的使用
  9. linux搭建gitlab
  10. MySQL查询结果导出到文件
  11. css宋体代码_html布局中统一设置文字字体样式
  12. 浅谈css样式(border、background、table)
  13. 详解多维数组与指针之间的关系
  14. 2017-06-30
  15. 李开复:垂直搜索违背了搜索引擎的发展初衷
  16. 如何查看浏览器Cookie数据(以360为例)
  17. SCI论文下载之chrome插件
  18. oracle双活svc,基于SVC的三种主流双活数据中心架构深入探讨
  19. [RK3399][Android7.1] DDR动态频率调节驱动小结
  20. Spring初窥门径

热门文章

  1. jedis操作redis(二)
  2. WordPress菜单“显示选项”无法显示的解决办法
  3. MariaDB Java Client 1.1.0 发布
  4. 小论接口(interface)和抽象类(abstract class)的区别
  5. Windows Server 2016 配置指南 全系列
  6. Apache Ignite的Node.js客户端使用入门
  7. 浅谈HTTP响应拆分攻击(一)
  8. List, Set, Map是否继承自Collection接口?
  9. hive 函数 Cube
  10. SpingMVC ModelAndView, Model,Control以及参数传递