hadoop的故障检测机制、任务调度机制
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
hadoop的故障检测机制、任务调度机制Hadoop的故障检测机制:
1. 心跳检测:Hadoop集群中的每个节点都会定期向NameNode发送
心跳信号。
如果NameNode在一定周期内没有收到该节点的心跳信号,就
会认为该节点已经宕机或者出现了故障,并将其标记为不可用。
2. 数据完整性检测:在Hadoop集群中,每个数据块都会有多个副本,如果某个数据块的任何一个副本出现了故障,NameNode会立即将其标记
为不可用,并从其他可用的副本中选择一个新的副本进行读取。
3. 数据节点检测:Hadoop会定期检测数据节点的存储状态,如果某
个节点的存储已经满了或者磁盘出现了故障,NameNode会将该节点标记
为不可用,并将存储在该节点上的数据块迁移到其他节点。
4. JobTracker监控:在Hadoop集群中,JobTracker会监控所有的
任务,并对任务的执行情况进行监控。
如果一个任务长时间没有执行,或
者执行失败,JobTracker会重新分配任务,并将日志记录下来,以便后
期进行分析。
Hadoop的任务调度机制:
1.FIFO调度:FIFO调度是最简单的调度策略,它按照任务的提交顺序,依次调度执行。
由于FIFO调度没有考虑任务的执行时间和优先级,
因此可能会导致低优任务长时间等待高优任务执行完毕的情况。
2. Fair调度:Fair调度是基于任务优先级的调度策略,它会将任务
按照优先级进行分配,并且为每个任务保证公平的执行时间。
Fair调度
还可以设置不同用户之间的资源占用比例,以保证不同任务之间的公平性。
3. Capacity调度:Capacity调度是基于资源容量的调度策略,它可以为不同的用户分配不同的资源容量,以便满足不同用户之间的需求。
Capacity调度还可以设置不同用户之间的优先级,以保证高优任务能够优先执行。
4. Deadline调度:Deadline调度是一种基于任务完成时间的调度策略,它可以根据任务的截止时间来进行调度,以保证任务能够在规定的时间内完成。
Deadline调度还可以设置任务的优先级,以保证高优任务能够优先执行。