Hadoop 概述
Hadoop 是开源的,分布式存储和分布式计算平台。我们可以通过它搭建大型数据仓库,PB级数据存储、处理、分析、统计等业务。
Hadoop 包含了以下几个模块:
- Hadoop Common:常用的工具,包括支持其它 Hadoop 模块。
- Hadoop Distributed File System(HDFS):分布式文件系统。
- Hadoop YARN:资源调度系统,负责整个集群资源的管理和调度。
- Hadoop MapReduce:分布式计算框架,处理大数据集。
HDFS-分布式文件系统
GFS的克隆版,特点:扩展性 & 容错性 & 海量数据存储。
它的大致处理过程是将一个文件拆分成多个指定大小 Block(数据块),以及每个 Block 以几个副本的方式存储,并且每个 Block 的 id 都分开存在各个不同的节点上。这就大大提高了它的容错性。
YARN-资源调度系统
它的特点包括扩展性 & 容错性 & 多框架资源统一调度。
MapReduce-分布式计算框架
它的特点包括扩展性 & 容错性 & 海量数据离线处理。
Hadoop优势
可靠性方面:
- 数据存储,数据块多副本;
- 数据计算,重新调度作业计算。
扩展性方面:
- 存储/计算资源不够时,可以横向的线性扩展机器;
- 一个集群中可以包含数以千计的节点。
其它方面:
- 存储在廉价机器上,降低成本;
- 拥有成熟的生态圈。
狭义/广义的 Hadoop
狭义的 Hadoop
它是一个适合大数据分布式存储(HDFS)、分布式计算(MapReduce)和资源调度(YARN)的平台。
广义的 Hadoop
Hadoop 生态系统,它是一个很庞大的概念,hadoop 是其中最重要最基础的一个部分。生态系统中的每一个子系统只能解决某一个特定的问题域(甚至可能很窄),它不搞统一的一个全能系统,而是小而精的多个小系统。
Hadoop 生态系统特点:
- 开源、社区活跃;
- 囊括了大数据处理的方方面面;
- 成熟的生态圈。
Hadoop 常用发行版及选型
- Apache Hadoop(集成问题多,操作复杂)
- CDH:Cloudera Distributed Hadoop(推荐)
- HDP:Hortonworks Data Platform(推荐)