Hadoop详解(你想知道的这里都有!)

2021-01-22 16:52:51 浏览数 (1)

已经出过HDFS和MapReduce系列博客的小菌突发奇想,想拿一篇博客好好介绍一下它们的"老大哥"——Hadoop。为什么这么说,相信看完下面的内容你就知道了!

Hadoop的简介

  • Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了系统底层细节透明的分布式基础架构
  • Hadoop是基于Java语言开发的,具有很好的跨平台特性,并且可以部署在廉价的计算机集群中
  • Hadoop被公认为行业大数据标准开源软件,在分布式环境下提供了海量数据的处理能力
  • 几乎所有主流厂商都围绕Hadoop提供开发工具、开源软件、商业化工具和技术服务,如谷歌、雅虎、微软、思科、淘宝等,都支持Hadoop

Hadoop的发展简史

  • Hadoop最初是由Apache Lucene项目的创始人Doug Cutting开发的文本搜索库。Hadoop源自始于2002年的Apache Nutch项目——一个开源的网络搜索引擎并且也是Lucene项目的一部分
  • 在2004年,Nutch项目也模仿GFS开发了自己的分布式文件系统NDFS(Nutch Distributed File System),也就是HDFS的前身
  • 2004年,谷歌公司又发表了另一篇具有深远影响的论文,阐述了MapReduce分布式编程思想
  • 2005年,Nutch开源实现了谷歌的MapReduce
  • 到了2006年2月,Nutch中的NDFS和MapReduce开始独立出来,成为Lucene项目的一个子项目,称为Hadoop,同时,Doug Cutting加盟雅虎
  • 2008年1月,Hadoop正式成为Apache顶级项目,Hadoop也逐渐开始被雅虎之外的其他公司使用
  • 2008年4月,Hadoop打破世界纪录,成为最快排序1TB数据的系统,它采用一个由910个节点构成的集群进行运算,排序时间只用了209秒
  • 在2009年5月,Hadoop更是把1TB数据排序时间缩短到62秒。Hadoop从此名声大震,迅速发展成为大数据时代最具影响力的开源分布式开发平台,并成为事实上的大数据处理标准

Hadoop的特性

Hadoop是一个能够对大量数据进行分布式处理的软件框架,并且是以一种可靠、高效、可伸缩的方式进行处理的,它具有以下几个方面的特性:

  • 高可靠性
  • 高效性
  • 高可拓展性
  • 高容错性
  • 成本低
  • 运行在Linux平台上
  • 支持多种编程语言

Hadoop的应用现状

  • Hadoop凭借其突出的优势,已经在各个领域得到了广泛的应用,而互联网领域是其应用的主阵地
  • 2007年,雅虎在Sunnyvale总部建立了M45——一个包含了4000个处理器和1.5PB容量的Hadoop集群系统
  • Facebook作为全球知名的社交网站,Hadoop是非常理想的选择,Facebook主要将Hadoop平台用于日志处理、推荐系统和数据仓库等方面
  • 国内采用Hadoop的公司主要有百度、淘宝、网易、华为、中国移动等,其中,淘宝的Hadoop集群比较大

Apache Hadoop版本演变

  • Apache Hadoop版本分为两代,我们将第一代Hadoop称为Hadoop 1.0,第二代Hadoop称为Hadoop 2.0
  • 第一代Hadoop包含三个大版本,分别是0.20.x,0.21.x和0.22.x,其中,0.20.x最后演化成1.0.x,变成了稳定版,而0.21.x和0.22.x则增加了NameNode HA等新的重大特性
  • 第二代Hadoop包含两个版本,分别是0.23.x和2.x,它们完全不同于Hadoop 1.0,是一套全新的架构,均包含HDFS Federation和YARN两个系统,相比于0.23.x,2.x增加了NameNode HA和Wire-compatibility两个重大特性

Hadoop各种版本

  • Apache Hadoop
  • Hortonworks
  • Cloudera(CDH:Cloudera Distribution Hadoop)
  • MapR

选择 Hadoop版本我们应该考虑的因素:

  • 是否开源(即是否免费)
  • 是否有稳定版
  • 是否经实践检验
  • 是否有强大的社区支持

Hadoop项目结构

Hadoop生态系统

小伙伴们看到这里,应该明白为什么Hadoop是HDFS和MapReduce的"大哥"了吧~因为HDFS和MapReduce不仅各自作为Hadoop生态系统的一员,它俩更是构成了Hadoop的两大核心。关于HDFS和MapReduce的详细介绍,小伙伴们可以去看小菌前面的博客。关于Hadoop的生态系统,小菌将在下一篇博客为大家做详细介绍!敬请关注!

0 人点赞