带你了解Hadoop前世今生

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

推荐阅读时间:10分钟

字数:610字

什么是Hadoop?

Apache™ Hadoop® 项目开发用于可靠、可扩展、分布式计算的开源软件。

Apache Hadoop 软件库是一个框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集。它旨在从单个服务器扩展到数千台机器,每台机器都提供本地计算和存储。因为每台计算机都可能容易出现故障,所以该库本身不是依靠硬件来提供高可用性,而是设计用于检测和处理应用层的故障,从而在计算机集群之上提供高可用性服务。

Hadoop的起源

  • 2003-2004年,Google公布了部分GFS和MapReduce思想的细节,受此启发的Doug Cutting等人用2年的业余时间实现了DFS和MapReduce机制,使Nutch性能飙升。然后Yahoo招安Doug Gutting及其项目。
  • 2005年,Hadoop作为Lucene的子项目Nutch的一部分正式引入Apache基金会。
  • 2006年2月被分离出来,成为一套完整独立的软件,起名为Hadoop

总结起来,Hadoop起源于Google的三大论文

  • GFS:Google的分布式文件系统Google File System
  • MapReduce:Google的MapReduce开源分布式并行计算框架
  • BigTable:一个大型的分布式数据库

Hadoop的发展历程

Hadoop的版本是多条分支并行的发展的,到目前为止,Hadoop的版本有1.x、2.x、3.x,下面以思维导图的方式展示各个版本的特性以及缺陷

Hadoop1.x Hadoop1.x.png

Hadoop2.x、Hadoop3.x

HDFS.png

至此,Hadoop三个版本的特性以及缺陷笔者已经以导图的方式展示,对于版本的选择,建议直接选择Hadoop2.0之后的版本进行学习。如果是用于生产环境部署,则可根据实际的业务环境选择稳定的版本。


本人是该领域的小白,在学习的路上,上述文章如有错误还请指出批评。

猜你喜欢

转载自juejin.im/post/7014668756697743397