Hadoop生态系统,hadoop介绍

Hadoop生态系统,hadoop介绍
Hadoop生态系统,hadoop介绍

Hadoop生态系统知识介绍

首先我们先了解一下Hadoop的起源。然后介绍一些关于Hadoop生态系统中的具体工具的使用方法。如:HDFS、MapReduce、Yarn、Zookeeper、Hive、HBase、Oozie、Mahout、Pig、Flume、Sqoop。

Hadoop的起源

Doug Cutting是Hadoop之父,起初他开创了一个开源软件Lucene(用Java语言编写,提供了全文检索引擎的架构,与Google类似),Lucene后来面临与Google同样的错误。于是,Doug Cutting学习并模仿Google解决这些问题的办法,产生了一个Lucene的微缩版Nutch。

后来,Doug Cutting等人根据2003-2004年Google公开的部分GFS和Mapreduce 思想的细节,利用业余时间实现了GFS和Mapreduce的机制,从而提高了Nutch的性能。由此Hadoop产生了。

Hadoop于2005年秋天作为Lucene的子项目Nutch的一部分正式引入Apache基金会。2006年3月份,Map-Reduce和Nutch Distributed File System(NDFS)分别被纳入Hadoop的项目中。

关于Hadoop名字的来源,是Doug Cutting儿子的玩具大象。

Hadoop是什么

Hadoop是一个开源框架,可编写和运行分布式应用处理大规模数据。Hadoop框架的核心是HDFS和MapReduce。其中HDFS 是分布式文件系统,MapReduce 是分布式数据处理模型和执行环境。

在一个宽泛而不断变化的分布式计算领域,Hadoop凭借什么优势能脱颖而出呢?

1. 运行方便:Hadoop是运行在由一般商用机器构成的大型集群上。Hadoop在云计算

服务层次中属于PaaS(Platform-as-a- Service):平台即服务。

2. 健壮性:Hadoop致力于在一般的商用硬件上运行,能够从容的处理类似硬件失效这类

的故障。

3. 可扩展性:Hadoop通过增加集群节点,可以线性地扩展以处理更大的数据集。

4. 简单:Hadoop允许用户快速编写高效的并行代码。

Hadoop的生态系统

?2) Nutch,互联网数据及Nutch搜索引擎应用

?3) HDFS,Hadoop的分布式文件系统

?5) MapReduce,分布式计算框架

?6) Flume、Scribe,Chukwa数据收集,收集非结构化数据的工具。

?7)Hiho、Sqoop,讲关系数据库中的数据导入HDFS的工具

?8)Hive数据仓库,pig分析数据的工具

?10)Oozie作业流调度引擎

?11)Hue,Hadoop自己的监控管理工具

?12)Avro 数据序列化工具

?13)mahout数据挖掘工具

?14)Hbase分布式的面向列的开源数据库

Hadoop生态系统的特点

?源代码开源

?社区活跃、参与者众多

?涉及分布式存储和计算的方方面面

?已得到企业界验证

Hadoop生态系统的各组成部分详解

上面的图可能有些乱,下面我们用一个简易的Hadoop生态系统图谱来描述Hadoop生态系统中出现的各种数据工具。

Hadoop1.0时代的生态系统如下:

Hadoop2.0时代的生态系统如下:

Hadoop的核心

由上图可以看出Hadoop1.0与Hadoop2.0的区别。Hadoop1.0的核心由HDFS (Hadoop Distributed File System)和MapReduce(分布式计算框架)构成。而在Hadoop2.0中增加了Yarn(Yet Another Resource Negotiator),来负责集群资源的统一管理和调度。

HDFS(分布式文件系统)

HDFS源自于Google发表于2003年10月的GFS论文,也即是说HDFS是GFS的克隆版。

此处只是HDFS的概述,如果想了解HDFS详情,请查看HDFS详解这篇文章。

HDFS具有如下特点:

1.良好的扩展性

2.高容错性

3.适合PB级以上海量数据的存储

HDFS的基本原理

?将文件切分成等大的数据块,存储到多台机器上

?将数据切分、容错、负载均衡等功能透明化

?可将HDFS看成容量巨大、具有高容错性的磁盘

HDFS的应用场景

?海量数据的可靠性存储

?数据归档

Yarn(资源管理系统)

Yarn是Hadoop2.0新增的系统,负责集群的资源管理和调度,使得多种计算框架可以运行在一个集群中。

此处只是Yarn的概述,如果想了解Yarn详情,请查看Yarn详解这篇文章。

Yarn具有如下特点:

1.良好的扩展性、高可用性

2.对多种数据类型的应用程序进行统一管理和资源调度

3.自带了多种用户调度器,适合共享集群环境

MapReduce(分布式计算框架)

MapReduce源自于Google发表于2004年12月的MapReduce论文,也就是说,Hadoop MapReduce是Google MapReduce的克隆版。

此处只是MapReduce的概述,如果想了解MapReduce详情,请查看MapReduce详解这篇文章。

MapReduce具有如下特点:

1.良好的扩展性

2.高容错性

3.适合PB级以上海量数据的离线处理

Hive(基于MR的数据仓库)

Hive由facebook开源,最初用于解决海量结构化的日志数据统计问题;是一种

ETL(Extraction-Transformation-Loading)工具。它也是构建在Hadoop之上的数据仓库;数据计算使用MR,数据存储使用HDFS。

Hive定义了一种类似SQL查询语言的HiveQL查询语言,除了不支持更新、索引和实物,几乎SQL的其他特征都能支持。它通常用于离线数据处理(采用MapReduce);我们可以认为Hive的HiveQL语言是MapReduce语言的翻译器,把MapReduce程序简化为HiveQL语言。但有些复杂的MapReduce程序是无法用HiveQL来描述的。

Hive提供shell、JDBC/ODBC、Thrift、Web等接口。

此处只是Hive的概述,如果想了解Hive详情,请查看Hive详解这篇文章。

Hive应用场景

1.日志分析:统计一个网站一个时间段内的pv、uv ;比如百度。淘宝等互联网公司

使用hive进行日志分析

2.多维度数据分析

3.海量结构化数据离线分析

4.低成本进行数据分析(不直接编写MR)

Pig(数据仓库)

Pig由yahoo!开源,设计动机是提供一种基于MapReduce的ad-hoc数据分析工具。它通常用于进行离线分析。

Pig是构建在Hadoop之上的数据仓库,定义了一种类似于SQL的数据流语言–Pig Latin,Pig Latin可以完成排序、过滤、求和、关联等操作,可以支持自定义函数。Pig自动把Pig Latin映射为MapReduce作业,上传到集群运行,减少用户编写Java程序的苦恼。

Pig有三种运行方式:Grunt shell、脚本方式、嵌入式。

此处只是Pig的概述,如果想了解Pig详情,请查看Pig详解这篇文章。

Pig与Hive的比较

Mahout(数据挖掘库)

Mahout是基于Hadoop的机器学习和数据挖掘的分布式计算框架。它实现了三大算法:推荐、聚类、分类。

HBase(分布式数据库)

HBase源自Google发表于2006年11月的Bigtable论文。也就是说,HBase是Google Bigtable的克隆版。

HBase可以使用shell、web、api等多种方式访问。它是NoSQL的典型代表产品。此处只是HBase的概述,如果想了解HBase详情,请查看HBase详解这篇文章。HBase的特点

1.高可靠性

2.高性能

3.面向列

4.良好的扩展性

HBase的数据模型

下面简要介绍一下:

?Table(表):类似于传统数据库中的表

?Column Family(列簇):Table在水平方向有一个或者多个Column Family组成;一个Column Family 中可以由任意多个Column组成。

?Row Key(行健):Table的主键;Table中的记录按照Row Key排序。

?Timestamp(时间戳):每一行数据均对应一个时间戳;也可以当做版本号。

Zookeeper(分布式协作服务)

Zookeeper源自Google发表于2006年11月的Chubby论文,也就是说Zookeeper 是Chubby的克隆版。

Zookeeper解决分布式环境下数据管理问题:

1.统一命名

2.状态同步

3.集群管理

4.配置同步

Zookeeper的应用

?HDFS

?Yarn

?Storm

?HBase

?Flume

?Dubbo

?Metaq

Sqoop(数据同步工具)

Sqoop是连接Hadoop与传统数据库之间的桥梁,它支持多种数据库,包括MySQL、DB2等;插拔式,用户可以根据需要支持新的数据库。

Sqoop实质上是一个MapReduce程序,充分利用MR并行的特点,充分利用MR的容错性。

此处只是Sqoop的概述,如果想了解Sqoop详情,请查看Sqoop详解这篇文章。Flume(日志收集工具)

Flume是Cloudera开源的日志收集系统。

Flume的特点

1.分布式

2.高可靠性

3.高容错性

4.易于定制与扩展

Flume OG与Flume NG的对比

?Flume OG:Flume original generation 即Flume 0.9.x版本,它由agent、collector、master等组件构成。

?Flume NG:Flume next generation ,即Flume 1.x版本,它由Agent、Client等组件构成。一个Agent包含Source、Channel、Sink和其他组件。

Oozie(作业流调度系统)

目前计算框架和作业类型种类繁多:如MapReduce、Stream、HQL、Pig等。这些作业之间存在依赖关系,周期性作业,定时执行的作业,作业执行状态监控与报警等。如何对这些框架和作业进行统一管理和调度?

解决方案有多种:

1.Linux Crontab

2.自己设计调度系统(淘宝等公司)

3.直接使用开源系统(Oozie)

Hadoop发行版(开源版)介绍

?Apache Hadoop

推荐使用2.x.x版本

下载地址:https://www.360docs.net/doc/848480123.html,/releases.html

?CDH(Cloudera Distributed Hadoop)

推荐使用CDH5版本

下载地址:https://www.360docs.net/doc/848480123.html,/cdh5/cdh/5/

详细安装步骤查看文章:搭建5个节点的hadoop集群环境(CDH5)?HDP(HortonWorks Data Platform)

推荐使用HDP2.x版本

下载地址:https://www.360docs.net/doc/848480123.html,/downloads/#data-platform

最后建议:关于不同发行版在架构、部署和使用方法一致,不同之处仅在于内部实现。建议选择公司发行版,比如CDH或者HDP,因为它们经过集成测试,不会面临版本兼容性问题。

了解最新课程及报名优惠信息,请访问光环大数据官方网站:https://www.360docs.net/doc/848480123.html, PC官网:https://www.360docs.net/doc/848480123.html,/

手机官网:https://www.360docs.net/doc/848480123.html,/mobile/

学大数据,就选光环大数据!16年老品牌,上市机构有保障!

网易视频云:Kudu,支持快速分析的新型Hadoop存储系统

https://www.360docs.net/doc/848480123.html, 网易视频云:Kudu,支持快速分析的新型 Hadoop存储系统 网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在在线音视频平台。 Kudu是Cloudera开源的新型列式存储系统,是Apache Hadoop生态圈的新成员之一(incubating),专门为了对快速变化的数据进行快速的分析,填补了以往Hadoop存储层的空缺。本文主要对Kudu的动机、背景,以及架构进行简单介绍。 背景——功能上的空白 Hadoop生态系统有很多组件,每一个组件有不同的功能。在现实场景中,用户往往需要同时部署很多Hadoop工具来解决同一个问题,这种架构称为混合架构(hybrid architecture)。比如,用户需要利用Hbase的快速插入、快读random access的特性来导入数据,HBase也允许用户对数据进行修改,HBase对于大量小规模查询也非常迅速。同时,用户使用HDFS/Parquet + Impala/Hive来对超大的数据集进行查询分析,对于这类场景,Parquet这种列式存储文件格式具有极大的优势。

https://www.360docs.net/doc/848480123.html, 很多公司都成功地部署了HDFS/Parquet + HBase混合架构,然而这种架构较为复杂,而且在维护上也十分困难。首先,用户用Flume或Kafka等数据Ingest工具将数据导入HBase,用户可能在HBase上对数据做一些修改。然后每隔一段时间(每天或每周)将数据从Hbase中导入到Parquet文件,作为一个新的partition放在HDFS上,最后使用Impala等计算引擎进行查询,生成最终报表。 这样一条工具链繁琐而复杂,而且还存在很多问题,比如: ? 如何处理某一过程出现失败? ? 从HBase将数据导出到文件,多久的频率比较合适? ? 当生成最终报表时,最近的数据并无法体现在最终查询结果上。 ? 维护集群时,如何保证关键任务不失败? ? Parquet是immutable,因此当HBase中删改某些历史数据时,往往需要人工干预进行同步。

Hadoop大数据系统理论与实践-赵

中国管理科学研究院人才战略研究所 人才所[2015]第(06)号 “Hadoop大数据系统理论与实践”高级培训班通知一、培训特色 当前,我国已经进入大数据时代,在这样的时代背景下,Hadoop的应用也逐渐深入,正在从互联网企业,逐渐拓展到电信,金融,政府,医疗这些传统行业。目前Hadoop应用场景已广泛应用于日志存储、查询和非结构化数据处理等大数据应用领域,随着Hadoop技术的不断成熟以及生态系统相关产品的完善,包括Hadoop对SQL不断加强的支持,以及主流商业软件厂商对Hadoop支持的不断增强,必定会带动Hadoop渗透到越来越多的应用场景中。 2014年是中国大数据的应用落地年,越来越多的行业用户开始重视并启动大数据相关的项目。而在大数据领域的众多技术中,最受关注的是衍生于开源平台的Hadoop生态系统。Hadoop从2006年诞生至今已经超8年时间。2014年,整个生态系统变得比以往更加丰富,无论是在开源领域,商业软件厂商或是硬件厂商,都开始推出基于Hadoop的相关产品。Hadoop之所以受到如此的关注,主要原因在于它支持用户在低价的通用硬件平台上实现对大数据集的处理和分析,在某种程度上替代了传统数据处理所需的昂贵的硬件设备和商业软件。中国管理科学研究院人才战略研究所特举办“hadoop大数据系统理论与实践”高级培训班;并由盛科博文(北京)文化发展有限公司具体承办。 本课程将分别从理论基础知识,系统搭建以及应用案例三方面对Hadoop进行介绍。 本课程采用循序渐进的课程讲授方法,首先讲解Hadoop系统基础知识,概念及架构,之后讲解Hadoop实战技巧,最后详尽地介绍Hadoop经典案例,使培训者从概念到实战,均会有收获和提高。 二、目标收益 本课程将为大家全面而又深入的介绍Hadoop平台的构建流程,涉及Hadoop系统基础知识,概念及架构,Hadoop实战技巧,Hadoop经典案例等。 通过本课程实践,帮助学员对Hadoop生态系统有一个清晰明了的认识;理解Hadoop系统适用的场景;掌握Hadoop等初、中级应用开发技能;搭建稳定可靠的Hadoop集群,满足生产环境的标准;了解和清楚大数据应用的几个行业中的经典案例。 三、时间地点 2015年4月24日——2015年4月27日北京 (第一天报到,授课三天) 四、培训对象 各类IT/软件企业和研发机构的软件架构师、软件设计师、程序员。对于怀有设计疑问和问题,需要梳理解答的团队和个人,效果最佳。 主办单位:承办单位: 中国管理科学研究院人才战略研究所盛科博文(北京)文化发展有限公司2015年03月20日2015年03月20日

项目经理继续教育考试2018题库

1自由选课一 1、以下哪个不是数据仓库的特点 2、以下哪个不属于数据仓库需求分析的先决条件 3、进行需求分析可使用多种工具,但以下哪项是不适用的 4、以下哪个不属于数据仓库需求分析的先决条件 5、以下与逻辑建模技术表述无关的是哪一个 6、数据仓库设计过程中所采用的逻辑模型是下面哪一个 7、以下有关ETL表述不正确的是哪一个 8、以下哪一个不属于元数据管理系统的建设的步骤 9、以下哪一个不是数据仓库管理的内容 10、以下哪一项在数据挖掘项目中所占时间比重最大

11、在数据挖掘中,可以通过哪种方法找出发现不真实的数据资料,保证资料的可信度 12、软件需求规格说明书的内容不应包括对的描述 13、K-means算法的缺点不包括 14、CRM是指在合适的、通过合适的、在合适的内、向合适的、提供合适的。 15、银行客户流失预测模型建立流程中模型预测周期一般为 16、商业银行信用评分模型中的数据源不包括 17、利用客户偏好模型对客户进行合理性、等角度去描述群体和调整模型,直至得到理想的模型。 18、客户关系管理的核心是 19、BI和CRM的关系描述中,不正确的是 20、关于软件的概念,说法错误的是

21、下列说法有误的是 22、下列关于ORM的描述,哪些是错误的 23、下列关于软件重用的描述有误的是 中间件是通用服务,这些服务具有标准的程序接口和协议,针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。以下关于中间件的相关描述有误的是 24、Hadoop的标志物是 25、BigTable对应Apache开源项目中的 26、Hadoop生态系统中,被作为ETL使用的软件是 27、Hadoop生态系统中,由Facebook开源,使用SQL语言进行离线分析的软件是 28、Hadoop是由何种语言编写的 29、下列哪些服务是在安装Hadoop时需要临时关闭

hadoop生态系统及简介

hadoop生态系统及简介 一、hadoop1.x的生态系统 HBase:实时分布式数据库 相当于关系型数据库,数据放在文件中,文件就放在HDFS中。因此HBase是基于HDFS的关系型数据库。实时性:延迟非常低,实时性高。 举例:在近18亿条数据的表中查询1万条数据仅需1.58s,这是普通数据库(Oracle 集群,Mysql集群)无法办到的。 HDFS:分布式文件系统 MapReduce:分布式计算框架 Zookeeper:分布式协作服务 协作HBase存储、管理、查询数据,Zookeeper是一个很好的分布式协作服务框架。

Hive:数据仓库 数据仓库: 比如给你一块1000平方米的仓库,让你放水果。如果有春夏秋冬四季的水果,让你放在某一个分类中。但是水果又要分为香蕉、苹果等等。然后又要分为好的水果和坏的水果。。。。。 因此数据仓库的概念也是如此,他是一个大的仓库,然后里面有很多格局,每个格局里面又分小格局等等。对于整个系统来说,比如文件系统。文件如何去管理?Hive 就是来解决这个问题。 Hive: 分类管理文件和数据,对这些数据可以通过很友好的接口,提供类似于SQL语言的HiveQL查询语言来帮助你进行分析。其实Hive底层是转换成MapReduce的,写的HiveQL进行执行的时候,Hive提供一个引擎将其转换成MapReduce再去执行。 Hive设计目的:方便DBA很快地转到大数据的挖掘和分析中。 Pig:数据流处理 基于MapReduce的,基于流处理的。写了动态语言之后,也是转换成MapReduce 进行执行。和Hive类似。 Mahout:数据挖掘库 基于图形化的数据碗蕨。

hadoop生态系统

如今Apache Hadoop已成为大数据行业发展背后的驱动力。Hive和Pig等技术也经常被提到,但是他们都有什么功能,为什么会需要奇怪的名字(如Oozie,ZooKeeper、Flume)。 Hadoop带来了廉价的处理大数据(大数据的数据容量通常是10-100GB或更多,同时数据种类多种多样,包括结构化、非结构化等)的能力。但这与之前有什么不同? 现今企业数据仓库和关系型数据库擅长处理结构化数据,并且可以存储大量的数据。但成本上有些昂贵。这种对数据的要求限制了可处理的数据种类,同时这种惯性所带的缺点还影响到数据仓库在面对海量异构数据时对于敏捷的探索。这通常意味着有价值的数据源在组织内从未被挖掘。这就是Hadoop与传统数据处理方式最大的不同。 本文就重点探讨了Hadoop系统的组成部分,并解释各个组成部分的功能。MapReduce——Hadoop的核心 Google的网络搜索引擎在得益于算法发挥作用的同时,MapReduce在后台发挥了极大的作用。MapReduce框架成为当今大数据处理背后的最具影响力的“发动机”。除了Hadoop,你还会在MapReduce上发现MPP(Sybase IQ推出了列示数据库)和NoSQL(如Vertica和MongoDB)。 MapReduce的重要创新是当处理一个大数据集查询时会将其任务分解并在运行 的多个节点中处理。当数据量很大时就无法在一台服务器上解决问题,此时分布式计算优势就体现出来。将这种技术与Linux服务器结合可获得性价比极高的替代大规模计算阵列的方法。Yahoo在2006年看到了Hadoop未来的潜力,并邀请Hadoop创始人Doug Cutting着手发展Hadoop技术,在2008年Hadoop已经形成一定的规模。Hadoop项目再从初期发展的成熟的过程中同时吸纳了一些其他

[数据分析] 入门Hadoop(附代码&)

作者:GETINDATA公司创始人兼大数据顾问彼得亚·雷克鲁斯基(Piotr Krewski)和GETINDATA公司首席执行官兼创始人亚当·卡瓦(Adam Kawa) 目录 ?内容简介 ?设计理念 ?H ADOOP组件 ?H DFS ?Y ARN ?Y ARN 应用程序 ?监控 YARN 应用程序 ?用HADOOP处理数据 ?H ADOOP 的其它工具 ?其它资源 内容简介 Hadoop是目前最流行的大数据软件框架之一,它能利用简单的高级程序对大型数据集进行分布式存储和处理。本文将介绍Hadoop的核心概念,描述其体系架构,指导您如何开始使用Hadoop以及在Hadoop上编写和执行各种应用程序。 Hadoop是阿帕奇(Apache)软件基金会发布的一个开源项目,它可以安装在服务器集群上,通过服务器之间的通信和协同工作来存储和处理大型数据集。因为能够高效地处理大数据,Hadoop近几年获得了巨大的成功。它使得公司可以将所有数据存储在一个系统中,并对这些数据进行分析,而这种规模的大数据分析用传统解决方案是无法实现或实现起来代价巨大的。

以Hadoop为基础开发的大量工具提供了各种各样的功能,Hadoop还出色地集成了许多辅助系统和实用程序,使得工作更简单高效。这些组件共同构成了Hadoop生态系统。 Hadoop可以被视为一个大数据操作系统,它能在所有大型数据集上运行不同类型的工作负载,包括脱机批处理、机器学习乃至实时流处理。 您可以访问https://www.360docs.net/doc/848480123.html,网站获取有关该项目的更多信息和详细文档。 您可以从https://www.360docs.net/doc/848480123.html,获取代码(推荐使用该方法)来安装Hadoop,或者选择Hadoop商业发行版。最常用的三个商业版有Cloudera(CDH)、Hortonworks(HDP)和MapR。这些商业版都基于Hadoop的框架基础,将一些组件进行了打包和增强,以实现较好的集成和兼容。此外,这些商业版还提供了管理和监控平台的(开源或专有的)工具。 设计理念 Hadoop在解决大型数据集的处理和存储问题上,根据以下核心特性构建: ?分布式:存储和处理并非构建在一台大型超级计算机之上,而是分布在一群小型电脑上,这些电脑之间可以相互通信并协同工作。 ?水平可伸缩性:只需添加新机器就可以很容易地扩展Hadoop集群。每台新机器都相应地增加了Hadoop集群的总存储和处理能力。 ?容错:即使一些硬件或软件组件不能正常工作,Hadoop也能继续运行。 ?成本优化:Hadoop不需要昂贵的高端服务器,而且在没有商业许可证的情况下也可以正常工作。 ?编程抽象:Hadoop负责处理与分布式计算相关的所有纷杂的细节。由于有高级API,用户可以专注于实现业务逻辑,解决他们在现实世界中的问题。 ?数据本地化:Hadoop不会将大型数据集迁移到应用程序正在运行的位置,而是在数据所在位置运行应用程序。

大数据技术与应用 - 大数据处理和分析 - Spark - 第四课

大数据技术与应用 网络与交换技术国家重点实验室 交换与智能控制研究中心 程祥 2016年9月

提纲-大数据处理和分析 1. 批处理计算 1.1 MapReduce 1.2 Spark 2. 流计算 2.1 Storm 3. 图计算 3.1 Pregel 4. 分析和挖掘 4.1 Hive 4.2 Mahout

2 Spark ?2.1 Spark概述 ?2.2 Spark生态系统 ?2.3 弹性分布式数据集(RDD)?2.3 Spark运行架构 ?2.4 Spark编程实践

2.1 Spark概述 ?2.1.1Spark简介 ?2.1.2Scala简介 ?2.1.3Spark与Hadoop的比较

?Spark最初由美国加州伯克利大学(UC Berkeley)的AMPLab于2009年开发,是基于内存计算的大数据并行计算框架,可用于构建大型的、低延迟的数据分析应用程序 ?2013年Spark加入Apache孵化器项目后发展迅猛,如今已成为Apache软件基金会最重要的分布式计算系统开源项目之一 ?Spark在2014年打破了Hadoop保持的基准排序纪录–Spark/206个节点/23分钟/100TB数据 –Hadoop/2000个节点/72分钟/100TB数据 Spark用十分之一的计算资源,获得了比Hadoop快3倍的速度!

Spark具有以下特点: ①运行速度快:采用DAG执行引擎和内存计算 ②容易使用:支持包括Scala、Java、Python和R语 言在内的多种语言进行编程 ③与HDFS等存储层兼容:可以独立运行,也可以运 行在YARN等集群管理系统之上,特别地,它可以运行在任何的Hadoop数据源上,例如,HDFS和 HBase ④通用性:类似Hadoop,Spark提供了完整而强大 的技术栈,包括SQL查询、流式计算、机器学习和图算法等组件

hadoop部署

Hadoop配置部署 每个节点上的Hadoop配置基本相同,在Master节点操作,然后完成复制到其他所有的从节点。 下面所有的操作都使用waibao用户,切换waibao用户的命令是: su waibao 密码是:waibao 将软件包中的Hadoop生态系统包复制到相应waibao用户的主目录下(直接拖拽方式即可拷贝) 3.3.1 Hadoop安装包解压 进入Hadoop软件包,命令如下: cd /home/waibao/resources/ 复制并解压Hadoop安装包命令如下: cp hadoop-2.5.2.tar.gz ~/ cd tar -xvf hadoop-2.5.2.tar.gz mv hadoop-2.5.2 hadoop cd hadoop ls -l看到如下图的内容,表示解压成功: 3.3.2配置环境变量hadoop-env.sh 环境变量文件中,只需要配置JDK的路径。

vi etc/hadoop/hadoop-env.sh 在文件的靠前的部分找到下面的一行代码: export JAVA_HOME=${JAVA_HOME} 将这行代码修改为下面的代码: export JAVA_HOME=/usr/java/jdk7 然后保存文件。 3.3.3配置环境变量yarn-env.sh 环境变量文件中,只需要配置JDK的路径。 vi etc/hadoop/yarn-env.sh 在文件的靠前的部分找到下面的一行代码: # export JAVA_HOME=/home/y/libexec/jdk1.6.0/ 将这行代码修改为下面的代码(将#号去掉): export JAVA_HOME=/usr/java/jdk7 然后保存文件。 3.3.4配置核心组件core-site.xml vi etc/hadoop/core-site.xml 用下面的代码替换core-site.xml中的内容: fs.defaultFS hdfs://master:9000 hadoop.tmp.dir /home/waibao/hadoopdata

相关主题
相关文档
最新文档