1. Hadoop是什么?
- 什么是Hadoop:是分布式系统基础架构。
- 作用:解决大数据的存储与分析计算。 【大数据有三个问题待解决:采集、存储和分析计算。Hadoop解决了后两个问题,采集由Flume、kafka等解决。】
- 特点:
- 高可靠性:因为每个服务器都有副本,当某个存储出现故障,能从副本中拿。
- 高扩展性:扩展服务器时,并不需要关闭已有的服务器,即可以动态扩展服务器。
- 高效性:一个任务分成多个部分,分别交给服务器,并行的处理,提高效率。
- 高容错性:能够自动将失败的任务重新分配。
2. Hadoop组成
- HDFS:hadoop的分布式文件系统。 用于数据存储。由3部分组成:
1. NameNode:简称nn。用于存储文件的元数据,如文件名、文件目录、文件属性、文件的块列表及块所在的DataNode等。 2. DataNode:简称dn。用于存放文件的块数据和块数据的校验和。 3. Secondary NameNode:用于每隔一段时间对NameNode进行备份。 - yarn:hadoop的资源管理器。 用于资源调度。由4部分组成:
- ResourceManager:简称RM。对所有资源(主要是内存和CPU)进行管理。
- NodeManager:简称NM。对单节点资源(主要是内存和CPU)进行管理。
- Container:容器。相当于一台服务器。
- ApplicationMaster:简称AM。单个运行任务。
- MapReduce:用于hadoop数据的分析计算。 由2部分组成:
- Map:并行处理数据输入。
- Reduce:对Map结果进行汇总。
4. 查找一个文件的工作流程:
3. Hadoop的生态圈
当前主流的架构图:
|