Hadoop-1.2.1 源码分析1 (包图概览)

要存点货啊, 潜心研究技术

 

Hadoop主要包括如下组成部分:

  • Hadoop Core:一些支持hadoop其它子项目的通用工具集 (新版本改为 Hadoop Common)
  • HDFS:一个高容错性的分布式文件系统,用于存储数据
  • MapReduce:一个处理大数据集的分布式计算框架

图1-1 是Hadoop项目的主要顶层包图:

 图1-1

 

下载 hadoop-1.2.1 源码导入eclipse,见 图1-2: 

                                                                  

 

 

图1-2

 

表1-1 为各包之间的依赖关系:

包名 功能描述 需依赖的其它包
tools 提供一些命令行工具,如DistCp,archive mapreduce fs hdfs ipc io security conf util
mapreduce Hadoop的MapReduce实现,旧版本包名为mapred filecache fs hdfs ipc io net metrics security conf util
filecache 提供HDFS文件的本地缓存,用于加快MapReduce的数据访问速度 fs conf util
fs 文件系统的抽象,可以理解为支持多种文件系统实现的统一文件访问接口 hdfs ipc io net metrics security conf util
hdfs HDFS,Hadoop的分布式文件系统实现 fs ipc io http net metrics security conf util
ipc 一个简单的IPC的实现,依赖于io提供的编解码功能 io net metrics security conf util
io 表示层.  将各种数据编码/解码,方便于在网络上传输 ipc fs conf util 
net 封装部分网络功能,如DNS,socket ipc fs conf util
security 用户和用户组信息 io conf util 
conf 系统的配置参数 fs io util
metrics 系统统计数据的收集,属于网管范畴 util
util 工具类 mapreduce fs io conf
record 根据DDL(数据描述语言)自动生成他们的编解码函数,目前可以提供C++和Java io.Writable*
http 基于Jetty的HTTP Servlet,用户通过浏览器可以观察文件系统的一些状态信息和日志 log conf util
log 提供HTTP访问日志的HTTP Servlet util

 

 

参考资料:

google 的大数据计算相关论文

   GoogleCluster:http://static.googleusercontent.com/media/research.google.com/en/us/archive/googlecluster-ieee.pdf

   Chubby:http://static.googleusercontent.com/media/research.google.com/en/us/archive/chubby-osdi06.pdf

   GFS:http://static.googleusercontent.com/media/research.google.com/en/us/archive/gfs-sosp2003.pdf

   BigTable:http://static.googleusercontent.com/media/research.google.com/en/us/archive/bigtable-osdi06.pdf

   MapReduce:http://static.googleusercontent.com/media/research.google.com/en/us/archive/mapreduce-osdi04.pdf

posted @ 2015-06-25 12:16  清山布衣  阅读(466)  评论(0编辑  收藏  举报