Apache Hadoop

分布式系统基础架构
Hadoop是一个开源的分布式计算平台,能够使用简单的编程模型跨计算机集群分布式处理大规模数据[1]。Hadoop 的历史可以追溯到2002年,当时雅虎公司的Doug Cutting和Mike Cafarella开始开发一个能够处理大规模数据集的系统[2]。他们的开发基于Google的两篇论文,一篇是关于Google文件系统(GFS)的论文[3],另一篇是关于MapReduce计算模型的论文[4]。Hadoop的前身是Apache Lucene[5]的子项目Nutch的一部分,Doug Cutting将其取名为Hadoop,以纪念他儿子的玩具大象[6],并在2006年剥离出来成为一个独立发展的软件[2]
HadoopApache Lucene[5]历史背景说明了它最初的设计目的:处理海量数据。在早期,Hadoop主要被用于处理网络爬虫的数据,然后被用于搜索引擎等应用。随着时间的推移,Hadoop被越来越多地应用于数据仓库、数据湖、数据分析、机器学习等领域,成为了处理大数据的标准工具之一[7]

发展历史

2002年-2005年:Hadoop的前身Nutch

2002年10月,Doug Cutting和Mike Cafarella创建了开源网页爬虫项目Nutch[2]。Nutch[8]最初是为了从网络中收集和索引大量的网页信息,以便后续进行搜索和数据分析。然而,Nutch的发展需要一个可靠的分布式文件系统和计算模型来处理海量的数据,这正是Hadoop的主要功能。