您的位置:首页 > 大数据 > Hadoop

0基础入门大数据开发需要学习什么内容?(2)Hadoop体系

2019-05-05 18:10 991 查看
上文介绍了大数据开发学习需要的基础知识,接下来小编继续介绍大数据技术学习的重点之一:Hadoop。




三、Hadoop技术体系

(1)简介:

Hadoop是Apache开源组织的一个分布式基础框架,提供了一个分布式文件系统 (HDFS)、分布式计算(MapReduce)及统一资源管理框架(YARN)的软件架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。点击领取免费资料及课程

Hadoop框架核心的设计是:HDFS、MapReduce、YARN。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算,YARN为计算程序提供资源调度服务。

2006年项目成立的一开始,“Hadoop”只代表了两个组件——HDFS和MapReduce。如今,这个单词代表的是“核心”(即Core Hadoop项目)以及与之相关的一个不断成长的生态系统,包括数据存储、执行引擎、编程和数据访问框架等。和Linux类似,都是由一个核心和一个生态系统组成。

(2)名字的由来:

Hadoop的发音是[hdu:p]。

Hadoop这个名字是Hadoop项目创建者Doug Cutting 的儿子的一只玩具的名字。他的儿子一直称呼一只×××的大象玩具为 Hadoop 。这刚好满足Cutting 的命名需求,简短,容易拼写和发音,毫无意义,不会在别处使用。于是 Hadoop 就诞生了。




(3)主要组件介绍:

1)HDFS(Hadoop Distribute File System):分布式文件系统,提供对应用程序数据的高吞吐量,高伸缩性,高容错性的访问。Hadoop体系中数据存储管理的基础。

2)MapReduce:是一个分布式计算模型,由Map和Reduce组成,用以进行大数据量的计算。MapReduce分为两个阶段:Map阶段,Reduce阶段,其中Map阶段为映射,Reduce阶段是规约。其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果;Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。这样适合在大量计算机组成的分布式并行环境里进行数据处理。

3)YARN(Yet Another Resource Negotiator):分布式资源管理器,职能是将资源调度和任务调度分开。最大的特点是执行调度与Hadoop上运行的任务类型无关。Yarn可在Hadoop上执行除MapReduce以外的工作,其核心是分布式调度程序。

(4)其他模块简介(部分):

4)HBase:是一个基于HDFS之上的高可靠、高性能、面向列、可伸缩的分布式NoSQL数据库。

5)Hive:是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

6)Zookeeper:一个分布式的,开放源码的分布式应用程序协调服务。提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

7)FlumeNG:是一个分布式、高可靠的数据采集系统,能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。

8)Sqoop:是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据 5ac 的传递,可将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

9)Pig:运行在Hadoop上,是对大型数据集进行分析和评估的平台。




(5)如何学习Hadoop?

1)学习Hadoop的基本要求:

a、掌握JavaSEb、会使用maven工具c、会使用IDE(eclipse、IDEA)d、会使用Linux系统

2)Hadoop介绍和环境搭建

a、hadoop介绍b、Hadoop独立模式的安装及测试c、Hadoop的集群结构d、Hadoop的伪分布模式e、Hadoop的完全分布式环境搭建...

3)HDFS底层工作原理、HDFS编程

4)MapReduce原理、MapReduce实践

5)YARN原理及实践

6)Zookeeper原理及实践

7)Hbase、Hive、FlumeNG、Sqoop原理及实践


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: