前言

在当今大数据时代,回顾技术发展历程,Hadoop作为一项具有里程碑意义的开源项目,在大数据存储和处理领域曾一度占据主导地位。诞生于2005年的Apache Hadoop,以其独特的分布式文件系统(HDFS)和高效的并行计算框架(MapReduce),为海量数据的高效存储、管理和分析提供了有力支持。

时至今日,当我们重新审视Hadoop这一经典组件时,有必要对其核心技术架构、功能特点以及在现代数据处理体系中的角色变化进行全面梳理,以便更好地理解其历史贡献及未来可能的发展方向。

发展历史

2004年,Doug Cutting受到Google发表的GFS(Google File System)和MapReduce论文启发,开始了Hadoop分布式文件系统(HDFS)和MapReduce计算框架的初步研发工作。

  • 2005年底,Hadoop作为一个独立项目从Nutch中剥离出来,并在Apache软件基金会成为顶级项目。
  • 同年,Hadoop在20个节点上稳定运行,展现出处理大规模数据的能力。

Hadoop的第一个稳定版于2011年发布,形成了以HDFS和MapReduce为核心的Hadoop 1.0版本。

随着Hadoop的发展,为了提高资源利用率和兼容更多的计算框架,Apache推出了Hadoop 2.0,引入了全新的资源管理器YARN(Yet Another Resource Negotiator),实现了更灵活的多租户和多种计算框架共存的架构。

之后几年间,围绕Hadoop形成了庞大的生态系统,包括Pig、Hive、HBase、ZooKeeper、Sqoop、Oozie等多种组件和服务,这些工具和服务极大地丰富了Hadoop的应用场景和能力范围。

生态介绍

这个生态最早被称作动物园:

Hadoop生态之所以被称为“动物园”,是因为在其发展早期,围绕Hadoop形成了一个包含众多以动物名称命名的项目和组件的生态系统。这些项目通常都有各自的动物图标,比如Hadoop本身(大象)、Hive(蜂巢)、Pig(猪)、HBase(海狸)、ZooKeeper(动物园管理员)、Flume(鹈鹕)、Chukwa(鹤)、Avro(鸟)、Kafka(猿猴)、Mahout(大象训练师,后来不再沿用动物名但最初也是)等等。

主要特性

  1. 资源利用率高,共享集群模式通过多种框架共享数据和硬件资源,减小数据移动成本;
  2. 运维成本低,共享模式少数管理员即可完成多个框架的统一管理;
  3. 良好的扩展性,可通过添加机器达到线性扩展集群能力的目的;
  4. 容错性,计算迁移或数据迁移等策略提高集群的可用性与容错性;
  5. 易于编程,简化分布式程序设计提高开发效率。
  6. YARN基于标签的调度解决的核心需求是实现部分资源的完全隔离,以及由此基础之上的各个资源池之间的资源互助,最终达到隔离并且弹性的计算形态。其作用是划分集群、指定标签资源百分比,分配给队列。

应用场景

数据密集型 并行计算 :数据量极大,但是计算相对简单的 并行处理 ,例如大规模 Web 信息搜索
计算密集型并行计算 :数据量相对不是很大,但是计算较为复杂的并行计算,例如气象预报,科学计算
数据密集与计算密集混合型的 并行计算
Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐