我爱编程

Hadoop 源码学习笔记(1)--前言和目录

2017-03-11  本文已影响788人  kifile
Hadoop

前言

说到分布式软件,就一定绕不过Hadoop

Hadoop 是 Google 著名的 MapReduceGFS 论文的开源实现,它为我们提供了一个分布式的数据存储和计算框架,能够让我们在低成本的PC设备上搭建一个大规模的分布式数据存储系统。

由于Hadoop的出现直接降低了大数据的存储和计算成本,可以说Hadoop以及他的整个生态环境拉开了大数据时代的大幕。

Hadoop主要由 Hdfs, MapReduceYarn 三个大模块组成,我会基于 Hadoop 3.0.0 alpha2 的源码,分别解析一下这三个模块的代码逻辑。

具体章节划分如下,先从Hdfs开始,每周更新一两篇源码走读笔记。

Hdfs

Hdfs(Hadoop Distributed File System)是Hadoop框架中的分布式存储系统,

主要关注点:

  1. Hdfs内部通信机制
  2. Hdfs的DFS实现机制
  3. Hdfs的数据冗余备份
  4. Hdfs的secondarynamenode和HA解析

主要章节划分有:

  1. Hdfs的启动流程分析
  2. Hdfs的RPC通信框架
  3. Hdfs 数据读写流程分析
  4. Hdfs BlockManager 解析
  5. Hdfs 的备份,高可用和横向扩展

MapReduce

Hadoop中的MapReduce框架负责在分布式系统中进行数据计算,通过将jar文件传输到各个数据节点进行分布式计算的形式,减少不必要的数据传输。

主要关注点:

  1. 提交MapReduce任务的解析过程
  2. Map、Shuffle、Reduce三个步骤之间的临时数据存储逻辑
  3. Shuffle步骤触发策略

时间待定,章节待定

Yarn

Yarn(Yet Another Resource Manager)是Hadoop框架中的资源管理者。

主要关注点:

  1. Yarn 对计算节点的抽象逻辑
  2. Yarn 的任务调度策略
  3. Yarn 对Map Reduce任务的切割分发

主要章节划分有:

  1. Yarn 简介
  2. YarnApplication 的生命周期
  3. Scheduler
  4. ContainerExecutor
上一篇下一篇

猜你喜欢

热点阅读