《hadoop 权威指南》 学习笔记(2)Hadoop 分布式文件系统
来源:互联网 发布:guy里guy气网络用语 编辑:程序博客网 时间:2024/05/15 02:55
HDFS是Hadoop文件抽象中的一种实现方式,Hadoop中有很多种实现方式,HDFS是其中一种。mapreduce对很多文件系统提供支持,但是处理大数据是你还是需要选一个方便的文件系统,比方说HDFS。
HDFS是Hadoop Distributed FileSystem 的简称,他是一个以流式数据访问模式,来存储超大文件,运行于商用硬件上的集群。实际上hdfs除了一部分接口基本实现方式不同之外,一部分基本操作命令和传统linux操作是一致的。
下面简单说说HDFS的基本概念。
HDFS数据块
HDFS的数据块大小为64MB,HDFS的文件被划分为过个分块存储,但是大小小于一个块的文件不会占据整个块的空间。HDFS之所以设置块很大,是为了减少磁盘的寻址速度,而主要依靠磁盘传输速度。对分布式系统块抽象的好处有两点:1 文件的大小可以大于磁盘的大小,反正也是分着存。2使用块抽象,简化了存储子系统的设计,很多信息,比方说运行的要求权限等等都可以省略了。
HDFS为两种节点,namenode和datanode,那么namenode为管理者,储存文件系统树上的文件和目录,这些文件储存为命名空间镜像和编辑日志文件,datanode为工作者节点,在这两种节点中存在一种叫做client的存在,clinet是用户用来与namenodedatanode交互用的文件系统。
hdfs接口,
Hadoop是由java编写的。java api可以调用所有hadoop的交互操作,Hadoop实际支持很多接口,但是好吧,还是用java吧。
基本的操作如下:open() 函数,返回FSDataInputStream对象,继承自java的datainputstream接口,支持随机访问。
create() 函数,原型 public FSDataOutputSream create(path f) throw IOException 请注意,返回的是FSDataOutputSream类型,
public boolean mkdirs(path f) throws IOException 创建目录
seek() 函数,定位文件位置,可以定位于文件中的任意绝对位置。
代码之类的东西比较难记,就不多说了,重点在于理解理念。
数据流,
数据流中的操作主要分为两种:文件读取,文件写入。
namenode管辖着文件的目录,错误等信息,client可能也是datanode节点。
读取文件。
写入节点。
- 《hadoop 权威指南》 学习笔记(2)Hadoop 分布式文件系统
- 《hadoop权威指南》学习笔记-hadoop分布式文件系统
- 【Hadoop权威指南】Hadoop分布式文件系统
- 《Hadoop权威指南》- 3、Hadoop 分布式文件系统
- 【Hadoop权威指南】Hadoop分布式文件系统(第三天)
- Hadoop权威指南读书笔记(第三章Hadoop分布式文件系统)
- 《Hadoop权威指南》——3、Hadoop 分布式文件系统
- 《hadoop权威指南》学习笔记
- 《hadoop权威指南》学习笔记
- Hadoop权威指南-笔记2
- Hadoop分布式文件系统(HDFS)学习笔记
- Hadoop权威指南笔记
- 菜鸟学习笔记--《Hadoop权威指南(第三版)》笔记
- Hadoop权威指南学习笔记整理
- Hadoop权威指南学习笔记一
- Hadoop权威指南学习笔记二
- Hadoop权威指南学习笔记三
- Hadoop权威指南学习笔记1
- STL 学习1
- QML官方系列教程——Qt Quick Dialogs
- Distributed RPC
- 枚举,结构,类
- 算法6-1:哈希函数
- 《hadoop 权威指南》 学习笔记(2)Hadoop 分布式文件系统
- window 2012 VDI之 快速部署(基于会话)
- c++中const成员变量赋值问题
- LeetCode Longest Palindromic Substring
- android代码设置EditText只输入数字、字母
- 算法6-2:解决哈系冲突之独立链表
- Oracle异常处理
- 【排序算法】选择排序(C++实现)
- PL/SQL编程要点