大数据- Hadoop入门

目录

2.1 hadoop的简介

1. 概述

2. 什么是分布式?

3. Hadoop的指代

2.2 hadoop的发展历程

2.3 hadoop的版本介绍

2.4 hadoop的常用端口号

2.5 hadoop的设计目的

2.6 hadoop的优势

1. 高可靠性

2. 高扩展性

3. 高效性

4. 高容错性

5. 低成本


2.1 hadoop的简介

1. 概述

大数据- Hadoop入门_第1张图片

Hadoop是一个对大量数据进行分布式处理的软件框架

前文我们提到大数据主要解决海量数据的采集、存储和分析计算问题。其中Hadoop框架主要解决海量数据的存储和分析计算问题

  • HDFS(hadoop distribute file system) - 分布式文件系统,解决海量数据的存储问题

  • MR(MapReduce) - 分离聚合式运算系统,分布式运算系统,解决海量数据的分析计算问题

  • YARN - 分布式资源调度系统

2. 什么是分布式

分布式指的是在多态计算机上协同工作以完成某个任务的过程

假设你有一本非常厚的书需要复印。如果你只有一台复印机,复制整本书将需要很长时间。现在,想象一下有十台复印机,每台都可以复制书中的一部分。你可以让每台复印机同时工作,每台复印机复制其中的一小部分,然后将它们组合在一起。这样,整个过程会比只用一台复印机快得多。

在这个比喻中,每台复印机就好比分布式系统中的一个计算节点(node),而整个过程就是分布式处理。每个节点都独立地执行任务的一部分,最后将它们的结果合并起来形成最终的输出。这种分布式方式可以大大提高处理速度和系统的可伸缩性。

在Hadoop中,分布式处理的核心思想是将大量的数据分成小块,并在多台计算机上并行处理这些数据块。这样可以更快地完成任务,同时也提高了系统的容错性,因为即使某个计算节点出现故障,其他节点仍然可以继续工作。这种分布式处理模型使得Hadoop能够有效地处理大规模数据集。

什么叫分布式?化整为零

3. Hadoop的指代

狭义上来说,hadoop就是单独指代hadoop这个软件,

广义上来说,hadoop指代大数据的一个生态圈,包括很多其他的软件

——Hadoop生态圈:hbase、hive、spark、flink、yarn、flume...

Hadoop生态的图例:

大数据- Hadoop入门_第2张图片

2.2 hadoop的发展历程

1. 起源(2004-2006):

大数据- Hadoop入门_第3张图片

Hadoop的起源可以追溯到2004年,由道格·切宾(Doug Cutting)和迈克尔·卡福曼(Mike Cafarella)等人开发。最初,Hadoop是为了支持Nutch项目,这是一个开源的网络搜索引擎。切宾基于Google的论文《MapReduce: Simplified Data Processing on Large Clusters》和《The Google File System》的思想,开发了Hadoop分布式文件系统(HDFS)和MapReduce编程模型。

2. Apache Hadoop项目(2006年):

2006年,Hadoop成为Apache软件基金会的项目。这一时期,Hadoop的社区逐渐壮大,吸引了许多贡献者和用户。

3. Hadoop 1.x版本(2006-2012):

Hadoop 1.x版本是最早的稳定版本,包括HDFS和MapReduce。在这个阶段,Hadoop开始被广泛应用于处理大规模数据和实现分布式计算。

4. Hadoop生态系统扩展(2012年至今):

2012年,Hadoop生态系统经历了扩展,引入了更多的组件和工具。一些重要的项目包括:

  • Hadoop 2.x版本: 引入了YARN(Yet Another Resource Negotiator),使Hadoop更灵活,能够支持不仅仅是MapReduce的计算模型。

  • Hive: 提供了类似SQL的查询语言,使用户能够通过类似于SQL的语法查询Hadoop中的数据。

  • Pig: 提供了一种类似脚本的语言,简化了在Hadoop上的数据处理。

  • HBase: 提供了一个分布式、面向列的NoSQL数据库。

  • Spark: 不仅替代了MapReduce,还引入了更多的内存计算,提高了性能。

5. Apache Hadoop 3.x版本(2017年至今):

Hadoop 3.x版本在性能、可靠性和扩展性方面进行了改进。它引入了一些新的特性,如Erasure Coding、支持GPU加速、Containerization等,以提升Hadoop的整体效能。

2.3 hadoop的版本介绍

Hadoop三大发行版本:Apache、Cloudera、Hortonworks。

Apache版本最原始(最基础)的版本,对于入门学习最好。

Cloudera在大型互联网企业中用的较多。

Hortonworks文档较好。

Apache Hadoop

官网地址:Apache Hadoop

下载地址:Index of /dist/hadoop/common

Cloudera Hadoop

官网地址:CDH Product Download

下载地址:http://archive-primary.cloudera.com/cdh5/cdh/5/

(1)2008年成立的Cloudera是最早将Hadoop商用的公司,为合作伙伴提供Hadoop的商用解决方案,主要是包括支持、咨询服务、培训。

(2)2009年Hadoop的创始人Doug Cutting也加盟Cloudera公司。Cloudera产品主要为CDH,ClouderaManager,Cloudera Support

(3)CDH是Cloudera的Hadoop发行版,完全开源,比Apache Hadoop在兼容性,安全性,稳定性上有所增强。

(4)Cloudera Manager是集群的软件分发及管理监控平台,可以在几个小时内部署好一个Hadoop集群,并对集群的节点及服务进行实时监控。Cloudera Support即是对Hadoop的技术支持。

(5)Cloudera的标价为每年每个节点4000美元。Cloudera开发并贡献了可实时处理大数据的Impala项目。

Hortonworks Hadoop

官网地址:Enterprise Data Management Platforms & Products | Cloudera

下载地址:Product Downloads | Cloudera

(1)2011年成立的Hortonworks是雅虎与硅谷风投公司Benchmark Capital合资组建。

(2)公司成立之初就吸纳了大约25名至30名专门研究Hadoop的雅虎工程师,上述工程师均在2005年开始协助雅虎开发Hadoop,贡献了Hadoop80%的代码。

(3)雅虎工程副总裁、雅虎Hadoop开发团队负责人Eric Baldeschwieler出任Hortonworks的首席执行官。

(4)Hortonworks的主打产品是Hortonworks Data Platform(HDP),也同样是100%开源的产品,HDP除常见的项目外还包括了Ambari,一款开源的安装和管理系统。

(5)HCatalog,一个元数据管理系统,HCatalog现已集成到Facebook开源的Hive中。Hortonworks的Stinger开创性的极大的优化了Hive项目。Hortonworks为入门提供了一个非常好的,易于使用的沙盒。

(6)Hortonworks开发了很多增强特性并提交至核心主干,这使得Apache Hadoop能够在包括Window Server和Windows Azure在内的Microsoft Windows平台上本地运行。定价以集群为基础,每10个节点每年为12500美元。

2.4 hadoop的常用端口号

名称

端口号

namenode内部通信端口

8020

Namenode HTTP UI

9870

MapReduce查看执行任务端口

8088

历史服务器通信端口

19888

2.5 hadoop的设计目的

用户通过开发分布式程序,充分利用低廉价的硬件资源完成海量数据的存储运算,不仅仅能够完成数据的存储和运算,还要能保证数据的安全性可靠性

2.6 hadoop的优势

1. 高可靠性

Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。

2. 高扩展性

当存储hdp集群的存储能力和运算资源不足时,可以横向的扩展机器节点来达到扩容和增强运算能力

大数据- Hadoop入门_第4张图片

3. 高效性

因为它以并行的方式工作,通过并行处理加快处理速度

大数据- Hadoop入门_第5张图片

4. 高容错性

Hadoop能够自动保存数据的多个副本,当有存储数据的节点宕机以后, 会自动的复制副本维持集群中副本的个数 ,并且能够自动将失败的任务重新分配。

大数据- Hadoop入门_第6张图片

5. 低成本

hadoop可以运行在廉价的机器上并行工作,达到高效,安全,效率于一身目的。

你可能感兴趣的:(大数据,大数据,hadoop,分布式)