![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hadoop源码分析
剑邑龙泉
这个作者很懒,什么都没留下…
展开
-
Hadoop源码分析笔记(二):Hadoop序列化与压缩
Hadoop文件序列化 本文着重讲述Hadoop面向海量数据处理的输入输出。代码请见org.apache.hadoop.io包。序列化用途 对象的序列化是用于将对象编码成一个字节流,以及从字节流中重新够着对象。 一般来说,序列化有以下三种主要用途: 一、作为一种持久化格式:一个对象被序列化以后,它的编码可以被存储到磁盘中,转载 2013-05-28 22:13:15 · 1230 阅读 · 0 评论 -
Hadoop源码分析笔记(十五):名字节点--启动和停止
名字节点启动和停止安全模式 名字节点启动时,内存中一片空白,第一要紧的事情就是把命名空间镜像加载到内存,并应用镜像编辑日志,这个过程结束时,会创建一个新的检查点,包括新命名空间镜像和一个空的编辑日志。完成上诉工作后,名字节点开始监听IPC和HTTP请求,虽然这个时候名字节点已经对外提供服务,但它只是为客户端提供了一个只读视图,这种名字节点的只读模式为安全模式。转载 2013-06-27 22:56:51 · 1482 阅读 · 0 评论 -
Hadoop源码分析笔记(十三):名字节点--数据块和数据节点管理
数据块和节点管理 名字节点维护着HDFS文件系统中两个重要的关系: 一、HDFS文件系统的文件目录树,以及文件的数据块索引,即每个文件对应的数据块列表。 二、数据块与数据节点的对应关系,即某一数据块保存在哪些数据节点的信息。 在第二关系中,“fsimage”文件不会记录数据块保存在哪些数据节点的信息。而是在数据节点加转载 2013-06-24 23:10:16 · 2743 阅读 · 0 评论 -
Hadoop源码分析笔记(十二):名字节点--文件系统目录树
名字节点简介 名字节点在Hadoop分布式文件系统中只有一个实例,却是最复杂的一个实例。名字节点维护着HDFS文件系统中两个最重要的关系: 1、HDFS文件系统的文件目录树,以及文件的数据块索引,即每个文件对应的数据块列表。 2、数据块和数据节点的对应关系,即某一个数据块保存在哪些数据及节点的信息。 其中,HDFS的目录树、元转载 2013-06-23 17:00:35 · 1633 阅读 · 0 评论 -
Hadoop源码分析笔记(十一):数据节点--数据节点整体运行
数据节点整体运行 数据节点通过数据节点存储和文件系统数据集,管理着保存在Linux文件系统上的数据块,通过流式接口提供数据块的读、写、替换、复制和校验信息等功能。建立在上述基础上的数据节点,还需要维护和名字节点的关系,周期性地检查数据块,并作为一个整体保证文件系统的正常工作。数据节点与名字节点的交互 数据节点提供了对HDFS文件数据的读写支持,但是,客户端访问HD转载 2013-06-15 22:41:27 · 1244 阅读 · 0 评论 -
Hadoop源码分析笔记(八):HDFS主要流程
HDFS主要流程 本节介绍5个典型的HDFS流程:客户端到名字节点的元数据操作、客户端读文件、客户端写文件、数据节点到名字节点的注册和心跳、以及第二名字节点的合并数据。这些流程充分体现了HDFS实体间IPC接口和流式接口的配合。客户端到名字节点的文件与目录操作 客户端有到名字节点的大量元数据的操作,如更改文件名、在给定目录下创建一转载 2013-06-06 00:10:57 · 887 阅读 · 0 评论 -
Hadoop源码分析笔记(七):HDFS非远程调用接口
HDFS非远程调用接口 在网络文件系统(NFS)是SUN公司在远程调用(RPC)之上开发的,它的所有文件操作,包括文件/目录API和用于读写文件数据,都通过远程过程调用实现。客户使用本地操作系统提供的系统调用访问文件系统,当虚拟文件系统发现系统调用需要访问NFS时,如在远程服务器上创建目录或对文件进行读操作,虚拟文件系统会将操作传递给NFS客户组件,由该组件通过RPC访问相应的N转载 2013-06-05 23:11:16 · 1853 阅读 · 2 评论 -
Hadoop源码分析笔记(六):HDFS源代码结构和基于IPC调用接口
HDFS源代码结构 HDFS的源代码都在org.apche.hadoop.hdfs包下。HDFS的源代码分布16个目录下,它们可以分为如下四类。 1、基础包 包括工具和安全包。其中,hdfs.util包含了一些HDFS实现需要的辅助数据结构;hdfs.security.token.block和hdfs.sercurity.token.deleg转载 2013-06-04 23:19:25 · 1721 阅读 · 0 评论 -
Hadoop源码分析笔记(五):HDFS特点和体系结构
HDFS Hadoop是一个能够让用户轻松架构和使用的分布式计算平台,用户可以在Hadoop上管理、开发和运行处理大规模数据的应用,其中,Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)扮演了非常基础的使用,它以文件系统的形式为应用提供海量数据存储服务。HDFS主要特点 HDFS作为一个分布式文件系统,具有转载 2013-06-03 22:21:02 · 1598 阅读 · 0 评论 -
Hadoop源码分析笔记(十):数据节点--流式接口的实现
流式接口的实现 数据节点通过数据节点存储DataStorage和文件系统数据集FSDataset,将数据块的物理存储抽象为对象上的服务,流式接口就是构建在这个服务之上、数据节点的另一基本功能。 为了保证HDFS的设计目标,提供高吞吐的数据访问,数据节点使用基于TCP流的数据访问接口,实现HDFS文件的读写。 数据节点的流式接口实现是典型的TCP服转载 2013-06-14 23:24:13 · 2165 阅读 · 0 评论 -
Hadoop源码分析笔记(九):数据节点--数据块存储
数据节点简介 我们继续来了解Hadoop分布式文件系统各个实体内部的工作原理。首先是数据节点,它以数据块的形式在本地Linux文件系统上保存HDFS文件的内容,并对外提供文件数据访问功能。客户端读写HDFS文件时,必须根据名字节点提供的信息,进一步和数据节点交互;同时,数据节点还必须接受名字节点的管理,执行名字节点指令,并上报名字节点感兴趣的事件,以保证文件系统稳定、可靠、高效地转载 2013-06-13 23:46:02 · 2994 阅读 · 0 评论 -
Hadoop源码分析笔记(四):Hadoop文件系统简介
Hadoop文件系统简介 Hadoop文件系统,包括Hadoop抽象文件系统以及基于该抽象文件系统的大量具体文件系统,以满足构建在Hadoop上的各类应用的各种数据访问需求,是文件系统发展的新阶段。 文件系统的实现 一、块管理 文件的物理结构指文件在存储设备(如磁盘)上的存取方式。为了便于管理,设备往往将存储空间组织成为具有一定结构的存转载 2013-05-30 23:33:40 · 913 阅读 · 0 评论 -
Hadoop源码分析笔记(三):Hadoop远程过程调用
Hadoop远程过程调用远程过程调用(RPC) 作为分布式系统,Hadoop中各个实体间存在着大量的交互,远程过程调用(Remote Procedure Call,RPC)让用户可以像调用本地方法一样调用另外一个应用程序提供的服务,而不必设计和开发相关的信息发送、处理和接收等具体代码,它提高了程序的互操作性。 简要来说,RPC就是允许程序调用位于其他机器上的转载 2013-05-30 00:09:41 · 1314 阅读 · 0 评论 -
Hadoop源码分析笔记(一):Hadoop Configuration详解
Hadoop Conguration详解:本文着重讲述Hadoop配置模块的基础类:org.apache.hadoop.conf.Configuration。Java配置文件 JDK本身提供了java.util.Properties类,用户处理简单的配置文件。Properties类,它是继承自Hashtable,表示一个持久的属性集,该集可保存在流中,或者从流中加载。转载 2013-05-27 21:16:37 · 1766 阅读 · 0 评论 -
Hadoop源码分析笔记(十四):名字节点--远程接口ClientProtocol
远程接口ClientProtocol ClientProtocol的方法分为两组,实现Hadoop文件系统的远程方法和实现多功能工具dfsadmin的远程方法。实现文件系统的远程方法可以进一步区分,将读写文件数据和其他操作分开。文件和目录相关事务 在Java系统中,对文件数据的读写是通过输入/输出流实现的,其他的文件管理功能由java.io.File封装。在转载 2013-06-26 23:16:26 · 2432 阅读 · 0 评论