hadoop笔记

本文深入剖析Hadoop的核心技术,包括MapReduce的工作原理及其应用场景、HDFS的设计理念及其实现方式、YARN的架构特点及资源调度机制。此外,还探讨了Hadoop升级的关键步骤与注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《Hadoop权威指南 中文版》 重点讲MR,没有yarn(功能在MR中),hdfs较少
MR适用于半结构化且面向记录的数据,适用于数量少的大文件;
map函数用于找到感兴趣的字段(如年份和气温),去掉缺失的、不可靠和错误的记录;

jobtracker记录每项任务总体的进展,如果一项任务失败,jobtracker将把任务重新调度到tasktracker;
tasktracker运行任务同时,把进度报告发给jobtracker;(注意心跳机制中,是tasktracker主动汇报和拉取)
通常有一个jobtracker和多个tasktracker;
tasktracker可以运行map任务和reduce任务;
如果tasktracker经常失败,会被jobtracker放入黑名单;
jobtracker失败很严重,是一个单点故障;

map任务把输出结果保存在本地磁盘,而不是hdfs,因为这些中间结果可以删除,没必要保存hdfs;

MR可以没有reduce和shuffle,如直接map写入hdfs;

hdfs块大小默认为64M;比磁盘块大是为了减少寻址开销;

datanode存储并提供定位块的服务,并定时向namenode发送块列表;

namenode只提供给客户端块位置请求,而不用提供数据,因而非常高效(并发量大);

利用带宽衡量节点之间的距离,依据是带宽很稀缺;
数据中心、机架、节点、进程,四者距离依次减小;

hadoop支持跨数据中心运行吗?

namenode如何选择副本的放置节点,是一个权衡可靠性与读取、写入带宽的过程;
(系统会尽量避免在一个机架上放置太多副本;)
(一旦确定副本位置,就确定了一条管线;)

map side join和combiner的区别?
combiner是map side reducer;

hadoop升级
http://dongxicheng.org/mapreduce-nextgen/hadoop-upgrade-to-version-2/
(Hadoop升级中最重要最关键的是HDFS的升级,而其他系统的升级,比如YARN、MapReduce等则容易得多。)

《Hadoop技术内幕深入解析MapReduce架构设计与实现原理》基于hadoop1.0

MapReduce 是一个分布式计算框架,主要由两部分组成 :编程模型和运行时环境;

MapReduce能处理的问题有:Top K问题、K-means聚类、贝叶斯分类,不能处理的问题有:Fibonacci数值计算、层次聚类法;
(对Fibonacci 数值计算,下一个结果需要依赖于前面的计算结果,问题不能被分解成若干个互不相干的子问题)

starfish,一个hadoop自动调参工具
http://www2.cs.duke.edu/starfish/

《Hadoop技术内幕深入解析YARN架构设计与实现原理》基于hadoop2.0

hadoop2.0中JobTracker被MRAppMaster代替?

ApplicationMaster和MRAppMaster什么关系?以及MPIAppMaster?
(MRAppMaster和MPIAppMaster都是一种AM具体形式?)

yarn HA基于ZK实现;
RM有4类状态机;
NM有3类状态机;

HOD是hadoop1.0提供的资源调度器,管理多个hadoop集群;(多个集群不便运维,资源利用率低下)
(hadoop2.0不再包含它)

资源调度器是RM的一个可插拔的组件;

yarn采用主资源公平调度算法DRF,来支持多维资源调度,如内存、cpu;

注意区分队列间资源分配和队列内部资源分配;

Fair Scheduler支持三种调度策略:FIFO、Fair和DRF;
(Capacity Scheduler只支持两种调度策略:FIFO和DRF;)
(注意MRv1只提供了FIFO一种调度策略;)

Fair Scheduler在选择队列时,和Capacity Scheduler一样,也采用了深度优先遍历算法;
(叶子节点是队列)

Fair Scheduler和MRv1一样,也采用了三级资源分配策略,即选择一个队列,应用程序(作业)和Container;

Fair Scheduler和Capacity Scheduler越来越同质化,可以认为前者具备了后者所有功能;

RM与NM之间,NM是RPC client,RM是RPC server;
AM与NM之间,AM是RPC client,NM是RPC server;

MR不算DAG框架,不仅是因为中间结果落地,也是map、reduce没有进一步拆分成merge、sort等;
(或者说MR是只有两个节点的DAG)
(通常可以将多个MR合并为一个Tez DAG)

《Hadoop技术内幕深入解析HADOOP COMMON和HDFS架构设计与实现原理》基于hadoop1.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值