




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
云计算与大数据第2版
Hadoop和Spark平台8.1认识Hadoop8.2Hadoop的组成、体系结构和部署8.3认识Spark实验CentOS环境下Hadoop的安装与配置实验Spark的安装与配置重点:Hadoop的组成、体系结构和部署Spark组成实验难点:实验本章重点及难点8.1认识HadoopHadoop是Apache开源软件基金会开发的,运行于大规模普通服务器上的大数据存储、计算、分析的分布式存储系统和分布式运算框架。Hadoop设计之初的目标就定位于高可靠性、高可拓展性、高容错性和高效性,正是这些设计上与生俱来的优点,才使得Hadoop一出现就受到众多大公司的青睐,同时也引起了研究界的普遍关注。Hadoop主要有以下几个优点:高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。8.1认识HadoopHadoop主要有以下几个优点:高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。低成本。与一体机、商用数据仓库以及QlikView、YonghongZ-Suite等数据集市相比,Hadoop是开源的,项目的软件成本因此会大大降低。8.1认识Hadoop8.2.1Hadoop的组成Hadoop由许多元素构成,其最底部是HadoopDistributedFileSystem(HDFS),完成Hadoop集群中所有存储节点的文件存储。HDFS的上一层是MapReduce引擎,该引擎由JobTrackers和TaskTrackers组成。此外,数据仓库工具Hive和分布式数据库Hbase等基本涵盖了Hadoop分布式平台的主要核心技术。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成1、Sqoop数据库同步工具Sqoop项目开始于2009年,最早是作为Hadoop的一个第三方模块存在,后来为了让使用者能够快速部署,也为了让开发人员能够更快速的迭代开发,Sqoop独立成为一个Apache项目。它主要用于在Hadoop与传统的数据库等之间进行数据的传递,可以将一个关系型数据库(例如:MySQL、Oracle、Postgres等)中的数据导入到Hadoop的HDFS中,也可以将HDFS的数据导入到关系型数据库中。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成2、Kettle工具Kettle是ETL(ExtractTransformandLoad)工具集,它允许用户管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述想做什么。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成3、Flume数据收集工具Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成4、HDFS分布式文件系统HDFS是ApacheHadoopCore项目的一部分,最开始是作为ApacheNutch搜索引擎项目的基础架构而开发。HDFS被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。它是一个高度容错性的系统,适合部署在廉价的机器上,能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。详细介绍见第9章。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成5、Kafka分布式消息队列Kafka是一种高吞吐量的分布式发布订阅消息系统,通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群机来提供实时的消费。它可以处理消费者规模的网站中的所有动作流数据,而这些动作(如,网页浏览,搜索和其他用户的行动)是分析现代网络上的许多社会功能的一个关键因素。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成6、MapReduce分布式并行计算框架MapReduce是分布式并行计算框架,用于大规模数据集(一般大于1TB)的并行运算。概念Map(映射)和Reduce(归约)是其主要思想。它的实现是指定一个Map(映像)函数,用来把一组键值对映像成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映像的键值对中的每一个共享相同的键组。详细介绍见第9章。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成7、HBase分布式数据库HBase是ApacheHadoop项目的子项目。它是一个分布式的、面向列的开源数据库,就像Bigtable利用了Google文件系统(FileSystem)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase中的数据存储基于是列的模式,而不是基于行的模式。详细介绍见第10章。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成8、Storm实时流计算框架Storm是一个免费开源、分布式、高容错的实时计算系统。Storm令持续不断的流计算变得容易,弥补了Hadoop批处理所不能满足的实时要求。Storm经常用于在实时分析、在线机器学习、持续计算、分布式远程调用和ETL等领域。Storm的部署管理非常简单,而且,在同类的流式计算工具,Storm的性能也是非常出众的。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成9、Mahout数据挖掘Mahout是Apache的开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。Mahout包含许多数据挖掘的算法实现,包括聚类、分类、推荐过滤、频繁子项挖掘等。此外,通过使用ApacheHadoop库,Mahout可以有效地扩展到云中。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成10、Hive数据仓库Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。Hive的学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,而不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。详细介绍见第10章。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成11、Impala查询引擎Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点就是它的快速。8.2Hadoop组成、体系结构和部署8.2.1Hadoop的组成12、Zookeeper协作服务ZooKeeper是一个分布式的、开放源码的分布式应用程序的协调服务工具,它为分布式应用提供一致性服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它提供的功能包括:配置维护、域名服务、分布式同步、组服务等。8.2Hadoop组成、体系结构和部署8.2.2Hadoop体系结构HDFS和Mapreduce是Hadoop体系结构的核心。HDFS是分布式文件系统,它实现了数据在计算机集群组成的云上高效的存储和管理,MapReduce是并行计算框架,能够让用户编写的Hadoop并行应用程序的运行得以简化,实现了分布式计算和任务处理。8.2Hadoop组成、体系结构和部署8.2.2Hadoop体系结构在分布式存储和分布式计算方面,Hadoop使用主/从(Master/Slave)架构。在一个配置完整的集群上,想让Hadoop运作起来,需要在集群中运行一系列后台(deamon)程序。不同的后台程序扮演不用的角色,这些角色由NameNode、DataNode、SecondaryNameNode、JobTracker、TaskTracker组成。详见第10章HDFS体系结构介绍8.2Hadoop组成、体系结构和部署8.2Hadoop组成、体系结构和部署8.2.3Hadoop部署Hadoop从三个角度对主机进行角色的划分。第一,最基本的是将主机划分为Master和Slave,即主机和从机;第二,从HDFS的角度,将主机划分为NameNode和DataNode(在分布式文件系统中,管理目录很重要,相当于Master,而NameNode就是目录管理者);第三,从MapReduce的角度,将主机划分为JobTracker和TaskTracker(一个Job经常被划分为多个Task)。8.2Hadoop组成、体系结构和部署8.2.3Hadoop部署Hadoop有三种部署模式:单机模式,伪分布式和完全分布式。1、单机模式单机模式是Hadoop的默认模式。当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置。在这种默认模式下所有3个XML文件均为空。当配置文件为空时,Hadoop会完全运行在本地。8.2Hadoop组成、体系结构和部署8.2.3Hadoop部署2、
伪分布模式可以将伪分布式的Hadoop看做只有一个节点的集群,在这个集群中,这个节点既是Master,也是Slave;既是NameNode,也是DataNode;既是JobTracker,也是TaskTracker。在伪分布中,需要简单修改Hadoop的配置文件8.2Hadoop组成、体系结构和部署8.2.3Hadoop部署3、完全分布式模式完全分布式模式将构建一个Hadoop集群,实现真正的分布式。其体系结构由两层网络拓扑组成,形成多个机架(Rack),每个机架会有30~40台的机器,这些机器共享具有GB级别带宽的网络交换机。在配置Hadoop时,配置文件分为两类:(1)只读类型的默认文件:core-default.xml、hdfs-default.xml、mapred-default.xml、mapred-queues.xml(2)定位(site-specific)设置:core-site.xml、hdfs-site.xml、mapred-site.xml、mapred-queues.xml8.3认识Spark8.3.1什么是SparkSpark是Apache下的开源项目,由加州大学伯克利分校AMP实验室(Algorithms,Machines,andPeopleLab)开发,是一种与Hadoop相似的开源集群计算环境,但Spark启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载,可用来构建大型的、低延迟的数据分析应用程序,这使得Spark在某些工作负载方面表现得更加优越。Spark是在Scala语言中实现的,它将Scala用作其应用程序框架。8.3认识Spark8.3.1什么是SparkSpark生态系统兼容Hadoop生态系统(兼容HDFS和Yarn);Spark生态系统学习成本很低;Spark性能表现优异;Spark有强大的社区支持;Spark支持多种语言接口编程(Java、Scala、Python、R)。8.3认识Spark8.3.1什么是SparkSpark支持四种运行模式,分别是:本地运行模式:所有Spark进程运行在同一个Java虚拟机(JavaVirtualMachine,JVM)中。集群单机模式:使用Spark自己内置的任务调度框架。基于Mesos:Mesos是一个流行的开源集群计算框架。基于Yarn:Yarn是一个与Hadoop关联的集群计算和资源调度框架,被认为是Hadoop2。8.3认识Spark8.3.2Spark框架8.3认识Spark8.3.2Spark框架Shark:基本上就是在Spark的框架基础上提供和Hive一样的HiveQL命令接口。现已被SparkSQL取代;Spark
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电商法律法规知识试题及答案
- 电动汽车的政策法规发展趋势试题及答案
- 未来创业政策展望试题及答案
- 2023届河北省高三第一次高考模拟考试政治试题 含解析
- 结合案例土木工程师考试试题及答案
- 电动汽车的跨国经营案例分析试题及答案
- 幼儿园数学考试动态调整试题及答案发布
- 猴子灵性测试题及答案
- 宁波市余姚市疾病预防控制中心招聘笔试真题2024
- 所有知识点2025年物理试题及答案
- 天津市和平区二十中学2025届学业水平考试化学试题模拟卷(九)含解析
- 2025届河北省“五个一”名校联盟高三下学期4月联考地理试题(含答案)
- 江苏省常州第一中学2025届高三下学期联合考试语文试题含解析
- 《隋唐时期的中外文化交流》教案-2024-2025学年统编版(2024)初中历史七年级下册
- 医院培训课件:《人文关怀与人文护理》
- 民用航空器驾驶员学校合格审定规则(完整版)
- 儿童支气管哮喘诊断与防治指南(2025)解读
- 中国低空经济城市发展指数(LCDI) 2025(发布版)
- 2025中考数学二轮复习-二次函数与三角形面积【课件】
- 2024年辽宁省公务员省考《行测》真题(含答案)
- 内蒙古机电职业技术学院单独招生(机电类)考试题(附答案)
评论
0/150
提交评论