Hadoop介绍
Hadoop是什么
- Hadoop是由Apache基金会所开发的分布式系统基础架构
- 主要解决海量数据的存储和分析计算问题
- Hadoop通常是指Hadoop生态圈
Hadoop优势
高可靠性
通过数据冗余存储实现可靠性
高扩展性
在双十一等高并发的场景下动态添加服务器, 之后可以删除服务器
高效性
在MapReduce的思想下, Hadoop是并行工作的, 以加快任务处理速度
高容错性
当任务计算失败时, 会自动重新分配任务
Hadoop组成(面试重点)
HDFS架构概述
HDFS是Hadoop Distributed File System, 即Hadoop分布式文件系统
NameNode(nn): 用来记录数据存储在哪些服务器上, 即保存数据存储位置的服务器
SecondeNameNone(2nn): 辅助NameNode完成工作, 对NameNode服务器每隔一段时间进行备份
DataNode(dn): 用来实际存储数据, 即用来存储数据的服务器
Yarn架构概述
- 客户端可以有多个
- ResourceManager用于管理整个集群的资源(CPU和内存)
- NodeManager用于管理每台服务器上的资源
- 每台服务器上可以虚拟化出来多个Container, 用户实际获得的是Container容器, 在Container中由ApplicationMaster进行管理
MapReduce架构概述
MapReduce将计算过程分为两个阶段: Map和Reduce
- Map阶段并行处理输入数据
- Reduce阶段对Map结果进行汇总
HDFS,Yarn和MapReduce三者之间的关系
//todo