
hadoop学习笔记
天佑凡人
人做一件事情要么是因为有把握有自信可以完成,要么是有责任必须去完成。
展开
-
Hadoop2.x 源代码组织结构
在 Hadoop 的 JAR 压缩包解压后的目录 hadoop-{VERSION} 中包含了 Hadoop 全部的管理脚本和 JAR 包,下面简单对这些文件或目录进行介绍。bin:Hadoop 最基本的管理脚本和使用脚本所在目录,这些脚本是 sbin 目录下管理脚本的基础实现,用户可以直接使用这些脚本管理和使用 Hadoop。etc:Hadoop 配置文件所在的目录,包括转载 2015-03-15 12:58:40 · 599 阅读 · 0 评论 -
Linux系统下Hadoop2.6版本编译
花了5个小时终于将Hadoop2.6版本成功编译过了,过程中遇到的最多的就是编译环境的版本问题,话不多说,以下是我的编译步骤:1.准备环境: 1.1 安装gcc yum install gcc yum install gcc-c++ 1.2 安装jdk(注意必须jdk,jre不行),版本最好是jdk1.7,否则后边编译会报错 1.3Pr原创 2015-03-18 19:16:35 · 866 阅读 · 0 评论 -
Maven搭建hadoop环境之pom.xml基本配置
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.原创 2015-10-29 14:30:53 · 828 阅读 · 0 评论 -
原MapReduce与YARN比对
一、原 MapReduce 程序的流程 1. 首先用户程序 (JobClient) 提交了一个 job,job 的信息会发送到 Job Tracker 中,Job Tracker 是 Map-reduce 框架的中心,他需要与集群中的机器定时通信 (heartbeat), 需要管理哪些程序应该跑在哪些机器上,需要管理所有 job 失败、重启等操作。 2. Tas原创 2015-04-21 18:14:06 · 450 阅读 · 0 评论 -
MapReduce之shuffle过程
Shuffle描述着数据从map task输出到reduce task输入的这段过程。官网图片表示Shuffle过程横跨map与reduce两端,如下图: 一 map端shuffle map端流程如下图: 1. map的输入来自HDFS的block(块)。 2.map的输出是原创 2015-04-28 11:32:54 · 460 阅读 · 0 评论 -
Hadoop之各进程与组件总结
1、hadoop通过一个jobtracker分派任务到一系列tasktracker来运行,tasktracker同时向jobtracker返回任务运行结果。jobtracker对作业的输入数据进行分片,然后为每个分片创建一个map任务,同时创建一定数量的reduce任务,并指派空闲的tasktracker来执行这些任务。tasktracker从jobtracker处获取任务jar包以及分片转载 2015-04-20 09:41:44 · 767 阅读 · 0 评论 -
hadoop之namenode工作特点
1. namenode始终在内存中保存metedata(整个文件系统的目录结构,每个目录有哪些文件,每个文件有哪些分块及每个分块保存在哪个DataNode上),用于处理“读请求”(不需要修改内容),到有“写请求”到来时,namenode会首先对metedata修改的内容写editlog到磁盘(每一次改变都会同步到磁盘。),成功返回后,才会修改内存,并且向客户端返回。客户端在写数据到每个datano转载 2015-04-14 09:40:02 · 553 阅读 · 0 评论 -
hadoop实现Join的几种方法
1) reduce side joinreduce side join是一种最简单的join方式,其主要思想如下:在map阶段,map函数同时读取两个文件File1和File2,为了区分两种来源的key/value数据对,对每条数据打一个标签 (tag),比如:tag=0表示来自文件File1,tag=2表示来自文件File2。即:map阶段的主要任务是对不同文件中的数据打标签转载 2015-04-14 17:15:10 · 3505 阅读 · 0 评论 -
hadoop Secondary NameNode作用
1. 光从字面上来理解,很容易让一些初学者先入为主的认为:SecondaryNameNode(snn)就是NameNode(nn)的热备进程。其 实不是。snn是HDFS架构中的一个组成部分,但是经常由于名字而被人误解它真正的用途,其实它真正的用途,是用来保存namenode中对HDFS metadata的信息的备份,并减少namenode重启的时间。2. 对于hadoop进程中 ,转载 2015-04-09 18:02:07 · 771 阅读 · 0 评论 -
新旧 Hadoop MapReduce 框架比对
首先客户端不变,其调用 API 及接口大部分保持兼容,这也是为了对开发使用者透明化,使其不必对原有代码做大的改变 ( 详见 2.3 Demo 代码开发及详解),但是原框架中核心的 JobTracker 和 TaskTracker 不见了,取而代之的是 ResourceManager, ApplicationMaster 与 NodeManager 三个部分。我们来详细解释这三个部分,首转载 2016-08-08 13:34:22 · 320 阅读 · 0 评论