### 1.2 Hadoop核心组件 

- **Hadoop Common**: The common utilities that support the other Hadoop modules.
- **Hadoop Distributed File System (HDFS™)**: A distributed file system that provides high-throughput access to application data.(分布式文件系统)
  - 源自于Google的GFS论文, 论文发表于2003年10月
  - HDFS是GFS的开源实现
  - HDFS的特点:扩展性&容错性&海量数量存储
  - 将文件切分成指定大小的数据块, 并在多台机器上保存多个副本
  - 数据切分、多副本、容错等操作对用户是透明的

![](img/hadoop-hdfs1.png)

- **Hadoop YARN**: A framework for job scheduling and cluster resource management.(资源调度系统)

  - YARN: Yet Another Resource Negotiator

  - 负责整个集群资源的管理和调度

  - YARN特点:扩展性&容错性&多框架资源统一调度

    ![](img/image-yarn.png)

- **Hadoop MapReduce**: A YARN-based system for parallel processing of large data sets.

  - 分布式计算框架
  - 源于Google的MapReduce论文，论文发表于2004年12月
  - MapReduce是GoogleMapReduce的开源实现
  - MapReduce特点:扩展性&容错性&海量数据离线处理

  ![](img/image-mapreduce.png)

  1，数据输入

  2，进行拆分

  3，进行Map操作

  4，进行shuffle

  5，进行Reduce操作

  6，输出最终结果