Hadoop基础

来源:互联网 发布:js只能输入正整数 编辑:程序博客网 时间:2024/05/16 18:18

MapReduce的体系架构

四个组建:

Client:提交任务

JobTraker:调度任务

TaskTracker:map()和reduce()

 

MapReduce的四个生命周期:

提交作业

1)  对作业进行配置

2)  MapReduce程序

3)  配置输入输出路径、输出是否压缩

4)  配置完成后通过JobClient提交任务

 

作业调度策略包括:FIFO调度器,公平调度器,容量调度器

 

任务分配:

TaskTracker和JobTracker之间通信与任务的分配通过心跳机制完成,汇报其资源使用情况,若TaskTracker由空闲资源则JobTracker分配作业中的任务给TaskTracker处理

 

任务执行

1)  拷贝代码到本地

2)  拷贝任务的信息到本地

3)  启动JVM运行任务

 

状态更新

1)  任务执行过程中,会将状态汇报给TaskTracker,然后由TaskTracker汇报给JobTracker

2)  任务进度由计数器实现

3)  JobTracker接收到最后一个任务运行完成后,才会标记作业成功

4)  作业成功后会执行删除中间结果等善后操作

 

Hadoop的三种工作模式

1)  单机模式(默认):

本地文件系统

不会启动守护进程

用于MapReduce的逻辑调试

2)  伪分布式模式:

一台模拟多台

每个守护进程以Java进程进行

增加代码调试,允许检查内存使用情况,HDFS输入输出,以及其他守护进程交互

修改配置文件:core-site.xml,hdfs-site.xml,mapred-site.xml

文件系统格式化

3)  完全分布式模式

运行在多台主机

修改配置文件:core-site.xml,hdfs-site.xml,mapred-site.xml

文件系统格式化

原创粉丝点击