前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hadoop阅读笔记(五)——重返Hadoop目录结构

Hadoop阅读笔记(五)——重返Hadoop目录结构

作者头像
JackieZheng
发布2018-01-08 17:29:09
1.2K0
发布2018-01-08 17:29:09
举报
文章被收录于专栏:JackieZhengJackieZheng

  常言道:男人是视觉动物。我觉得不完全对,我的理解是范围再扩大点,不管男人女人都是视觉动物。某些场合(比如面试、初次见面等),别人没有那么多的闲暇时间听你诉说过往以塑立一个关于你的完整模型。所以,第一眼,先走外貌协会的路线,打量一番,再通过望闻问切等各种手段获取关于你的大量信息(如谈吐、举止等),以快速建立起对于你的认识。

  待人接物如此,搞技术也不例外,起码我是这样的。把玩了一番Hadoop的MapReduce过程,单词计数、去重、单表关联等运行的时候控制台打印出各种我看懂看不懂的信息,有了这些视觉呈现足以激发我的兴趣,激励并指引我慢慢走向其内部构造、运行机制。通过上篇的过渡也对于整个MapReduce的运行过程有了一个粗略的认识,下一步就是慢慢深入其源码,一窥hadoop究竟。

  今天主要介绍有关Hadoop(0.20.2)的源码目录结构、各文件夹的职责以及源码中的包结构以及核心包对应的功能。

一.Hadoop的目录结构及职责

  1.目录结构

  2.各文件夹主要职责

bin: 此目录下为进行hadoop配置、运行以及管理的shell命令集合

c++:此目录下为linux下amd64-64位系统以及i386-32位系统提供的库文件集合

 conf:此目录下为运行与配置hadoop环境需要的配置文件以及示例文件集合,实际运行时可以对照此目录下的文件结构进行相应的配置

contrib:此目录下针对hadoop运行过程中需要特殊强化的模块进行了模块化封装,此为其发布包以及相应的配置文件

 docs:此目录下包含对于hadoop运行配置的基本文档,包括html和pdf两种格式

ivy:此目录下包含编译hadoop的ivy编译工具的脚本和配置文件

lib:此目录下包含编译以及运行hadoop环境必须的其他模块jar包集合

src:hadoop源码

webapps:发布包中的示例程序

build.xml:编译工程所需的ant配置文件

CHANGES.txt:新版本针对上一版本的更新点

  二、源码包结构及功能

  1.源码包结构

  前提:需要将下载好的hadoop源码导入eclipse中,具体做法可以网上搜。需要将src下的core、tool、mapred以及hdfs四个文件夹拷贝到eclipse的项目中,得到结构图如下:

  src/core:

  src/mapred:

 src/tools:

  src/hdfs:

  2.核心包主要功能介绍

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

后面就是咀嚼代码的岁月了

 对于Hadoop等大数据技术有兴趣的欢迎加群413471695交流讨论^_^

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-02-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档