HDFS的块缓存和访问权限
Block 块存储
所有的文件都是以 block 块的方式存放在 HDFS 文件系统当中, 在 Hadoop1 当中, 文件的 block 块默认大小是 64M, hadoop2 当中, 文件的 block 块大小默认是 128M, block 块的大小可以通过 hdfs-site.xml 当中的配置文件进行指定
<property><name>dfs.block.size</name><value>块大小 以字节为单位</value>
</property>
引入块机制的好处
- 一个文件有可能大于集群中任意一个磁盘
- 使用块抽象而不是文件可以简化存储子系统
- 块非常适合用于数据备份进而提供数据容错能力和可用性
块缓存
通常 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的块缓存和访问权限相关推荐
- arcgis server账号需要设置地图缓存的访问权限
如果gis服务起不来,那么可以看看arcgis server账号有没有设置地图缓存的访问权限,有可能arcgis server账号没有这个文件夹的访问权限. 本文用菊子曰发布 转载于:https:/ ...
- L型代码结构案例:Link访问权限(上)
这是松结对编程的第20篇(专栏目录). 本文探讨Link访问权限的最佳实现方法,力求外观干净且封装良好. 这些代码将位于L型代码结构(参见松结对编程系列中的定义)的下层,调用者无需理解其原理. 顺便说 ...
- WORKGROUP无法访问,您可能没有权限使用网络资源,请与这台服务器的管理员联系以查明您是否有访问权限。
"网上邻居"无法互访问题解决方法大全 总结起来基本上有下面的几个: 1,没有共享资源/共享服务未启用. 症状:电脑与电脑间可以Ping通,但无法访问共享资源,在"计 ...
- 给Elasticsearch 和Kibana添加基于角色的访问权限控制
给ELK 添加Shield权限控制 背景 这两天整个项目(电商SAAS系统)上线后,由于系统变得很大,每天产生的业务日志.访问日志.数据库慢查询.php等语言日志,都分布在不同的机器上,所以需要统一收 ...
- java平台类成员访问修饰符_JAVA类的修饰符及访问权限
1.类 外部类 class前的修饰符只能有public final abstrct 无(默认) :同包可见 (Eclipse中选择package) 内部类 class前的修饰符有 ...
- [Golang学习笔记] 05 程序实体2 作用域访问权限和变量重声明
作用域访问权限: 程序实体访问权限(作用域)有三种: 1. 包级私有(代码包) 2. 模块级私有(代码包) 3. 公开(全域). 一个函数是一个代码块. 一个程序实体的作用域总是会被限制在某个代码块中 ...
- linux FTP服务器访问权限的问题
当我们搭建好一个FTP服务器后,接下去的工作就是要对这个服务器进行权限的管理与设置.因为这项工作直接关系到FTP服务器上文件的安全,关系到FTP服务器运行的稳定.所以,作为企业的网络管理员,不能够忽视 ...
- android 静态方法 构造方法,android基础-Java篇02:类和对象、构造方法、访问权限控制、重载、this关键字、static关键字...
一.类和构造方法 (类和对象在百度百科已经有详细的介绍,这里只做简单的描述以及帮助理解:百度百科:类和对象,需要注意的是,百度百科类和对象的举例中都是C++,书写格式不要和Java混淆!) 什么是类? ...
- JavaSE——面向对象进阶(封装、this、static、代码块、包、权限修饰符、main方法详解)
第2节 面向对象进阶 一.封装与private 概述: 封装的意义在于保护或者防止代码(数据)被我们无意中破坏.保护成员属性,不让类以外的程序直接访问和修改. 封装原则: 隐藏对象的属性和实现细节,仅 ...
最新文章
- 推荐8个实用性十足,但是很小众的手机APP
- 洛谷——P1044 栈
- java.lang.RuntimeException: Handler (com.***.behavior.BEvent$1) {421bca80} sending message to a Hand
- Git:与GitHub搭配及SSH登录
- 数据结构之C语言模拟整数数组实现
- Highlight – 代码高亮html输出软件
- [leetcode-412-Fizz Buzz]
- Android ContentProvider、ContentResolver和ContentObserver的使用
- linux搭建gitlab
- MySQL查询结果导出到文件
- css宋体代码_html布局中统一设置文字字体样式
- 浅谈css样式(border、background、table)
- 详解多维数组与指针之间的关系
- 2017-06-30
- 李开复:垂直搜索违背了搜索引擎的发展初衷
- 如何查看浏览器Cookie数据(以360为例)
- SCI论文下载之chrome插件
- oracle双活svc,基于SVC的三种主流双活数据中心架构深入探讨
- [RK3399][Android7.1] DDR动态频率调节驱动小结
- Spring初窥门径
热门文章
- jedis操作redis(二)
- WordPress菜单“显示选项”无法显示的解决办法
- MariaDB Java Client 1.1.0 发布
- 小论接口(interface)和抽象类(abstract class)的区别
- Windows Server 2016 配置指南 全系列
- Apache Ignite的Node.js客户端使用入门
- 浅谈HTTP响应拆分攻击(一)
- List, Set, Map是否继承自Collection接口?
- hive 函数 Cube
- SpingMVC ModelAndView, Model,Control以及参数传递