Hadoop是什么?
- 广义:Hadoop生态圈的代名词
- 狭义:Apache旗下的一款开源免费软件
Hadoop发展历史(了解)
- 作者:卡大爷
- 需求:基于早期搜索业务对海量数据的存储和计算的遇到的瓶颈
- 创作源泉:谷歌提出的大数据论文
Hadoop的版本发展
- 学习阶段:重点掌握Apache的基础版本
- 生产领域一般使用商业版或者社区(CDH版本)
Hadoop的优势(4高)
- 高可靠性
- 高扩展性
- 高效性
- 高容错性
Hadoop的组成部分
- HDFS (hadoop的组成部分-负责海量数据的存储)
- NameNode(nn):管理真实数据的元数据的(hdfs集群中的老大)
- DataNode(dn):主要负责对真实数据块存储(hdfs集群中的小弟)
- SecondaryNameNode(2nn):主要为NameNode进行一些数据备份,
- 一般恢复数据的时候才会用到它,它也不能保证完全数据恢复。
YARN (hadoop的组成部分,主要负责资源调度)
- ResourceManager(rm):统筹管理每一台机器上的资源,并且负责接收处理客户端作业请求。
- NodeManager(nm):负责单独每一台机器的资源管理,实时保证和大哥(ResourceManager)通信。
- ApplicationMaster:针对每个请求job的抽象封装
- Container:将来运行在YARN上的每一个任务都会给其分配资源,Container就是当前任务所需资源的抽象封装。
MapReduce(hadoop的组成部分,主要负责数据的计算分析)
- Map阶段:就是把需要计算的数据按照需求分成多个MapTask任务来执行。
- Reduce阶段: 把Map阶段处理完的结果拷贝过来根据需求进行汇总计算
大数据的技术生态体系和推荐系统实现思路
目的:提前了解大数据项目的技术栈