云计算(典藏版)课件 第4-6章 微软云计算Microsoft Azure;Hadoop3.0:主流开源云架构;虚拟化技术_第1页
云计算(典藏版)课件 第4-6章 微软云计算Microsoft Azure;Hadoop3.0:主流开源云架构;虚拟化技术_第2页
云计算(典藏版)课件 第4-6章 微软云计算Microsoft Azure;Hadoop3.0:主流开源云架构;虚拟化技术_第3页
云计算(典藏版)课件 第4-6章 微软云计算Microsoft Azure;Hadoop3.0:主流开源云架构;虚拟化技术_第4页
云计算(典藏版)课件 第4-6章 微软云计算Microsoft Azure;Hadoop3.0:主流开源云架构;虚拟化技术_第5页
已阅读5页,还剩386页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章微软云计算MicrosoftAzure4.1微软云计算平台4.2微软云操作系统MicrosoftAzure4.3微软云关系数据库SQLAzure4.4MicrosoftAzureServiceFabricof3114.5MicrosoftAzureMarketplace高级人工智能人才培养丛书习题4.6MicrosoftAzure服务平台4.1微软云计算平台第4章微软云计算of312微软PDC2008年度大会上,微软公司首席软件架构师RayOzzie隆重宣布了微软云计算战略及微软云计算服务平台——WindowsAzureServicePlatform。微软中国于2014年3月底宣布由世纪互联负责运营中国大陆地区的微软WindowsAzure公有云平台及服务。由于WindowsAzure并不局限于Windows操作系统,2014年4月微软将云计算操作系统WindowsAzure更名为MicrosoftAzure。2016年微软推出AzureFunctions服务以支持无服务器的应用,同时也推出ServiceFabric以支持微服务的开发。微软的云计算服务平台MicrosoftAzure提供平台即服务(PaaS)、基础设施即服务(IaaS)和软件即服务(SaaS),并支持多种不同的编程语言、工具和框架,包括特定于Microsoft和第三方的软件和系统。4.1微软云计算平台第4章微软云计算of313MicrosoftAzure平台包括4个组成部分:MicrosoftAzure:位于云计算平台最底层,是微软云计算技术的核心;AzureSQL:是云中的关系数据库服务,基于MicrosoftSQLServer引擎;AzureServiceFabric:是一个分布式计算平台,优化任务关键型微服务应用程序构建、部署和操作;AzureMarketplace:提供应用程序和服务,经过认证和优化,可在Azure上运行。MicrosoftAzure平台体系架构4.2微软云操作系统MicrosoftAzure第4章微软云计算of314MicrosoftAzure是微软云计算战略的核心——云计算操作系统,包含5个部分:计算服务:为在Azure平台中运行的应用提供支持;存储服务:主要用来存储二进制和结构化的数据;Fabric控制器:主要用来部署、管理和监控应用;内容分发网络CDN:通过维持世界各地数据缓存副本,提高全球用户访问速度;AzureConnect:创建IP级连接,使本地应用和Azure平台相连。4.2.1MicrosoftAzure概述4.2微软云操作系统MicrosoftAzure第4章微软云计算of315计算服务可以支持运行有大量并行用户的大型应用程序,最重要的服务包括:4.2.2MicrosoftAzure计算服务虚拟机:物理计算机的软件模拟,包括虚拟处理器、内存、存储和网络资源;容器和Kubernetes:容器是轻型的虚拟化应用程序环境,Kubernetes服务是面向容器的完整业务流程服务;应用服务:可快速生成、部署和缩放任何平台上运行的应用;无服务器计算:对服务器、基础结构和操作系统的抽象,函数是关键组成部分。4.2微软云操作系统MicrosoftAzure第4章微软云计算of316存储服务依靠微软数据中心,允许用户在云端存储应用程序数据;目前提供四种主要的数据存储结构:Blob类型:存储二进制数据Table类型:提供更加结构化的数据存储Queue类型:支持应用程序组件之间通信File类型:支持虚拟机和云服务4.2.3MicrosoftAzure存储服务实现一个单一全局命名空间用户从世界任何地方都可以一致地存储和访问云中数据,并且存储容量可以随着时间推移任意增长4.2微软云操作系统MicrosoftAzure第4章微软云计算of317MAS的一个重要特征是能够存储和访问达到甚至超过EB级的海量数据,其产品系统由存储域(StorageStamp)和位置服务(LocationService)构成:4.2.3MicrosoftAzure存储服务流管理器:负责管理文件流的名空间、流到区块的映射,以及区块到存储节点的分配信息;区块节点:每个节点保存流管理器分配的区块副本和相应的数据块。4.2微软云操作系统MicrosoftAzure第4章微软云计算of318分区层包括三个主要的体系结构模块:一个分区管理器(PM)、多个分区服务器(PS)和一个锁服务。4.2.3MicrosoftAzure存储服务分区管理器:负责保存对象表到分区段的划分和每个分区段到相应分区服务器的分配情况;分区服务器:负责处理由分区管理器分配给它的一组分区段的请求;锁服务:Paxos锁服务用于分区服务器的主服务器选举。4.2微软云操作系统MicrosoftAzure第4章微软云计算of319Connect在MicrosoftAzure应用和本地运行的机器之间建立一个基于IPsec协议的连接,使两者更容易结合起来使用4.2.4MicrosoftAzureConnect4.2微软云操作系统MicrosoftAzure第4章微软云计算of3110MicrosoftAzure提供了一个内容分发网络CDN(ContentDeliveryNetwork),CDN存储距离用户较近站点的Blobs副本,提高数据访问性能。用户第一次访问Blob时,CDN存储了Blob的副本,存放的地点与用户在地理位置上比较靠近。当这个Blob被第二次访问时,它的内容将来自缓存,而不是来自离它位置较远的原始数据。4.2.5MicrosoftAzureCDN4.2微软云操作系统MicrosoftAzure第4章微软云计算of3111Fabric控制器是一个分布式应用,拥有计算机、交换机、负载均衡器等各种资源。在Role实例中需要安装Fabric代理,每台机器的Fabric控制器均可以与Fabric代理进行通信。Fabric控制器作用很广,它可以控制所有运行的应用。4.2.6Fabric控制器第4章微软云计算MicrosoftAzure4.3微软云关系数据库SQLAzure4.2微软云操作系统MicrosoftAzure4.1微软云计算平台4.4MicrosoftAzureServiceFabricof31124.5MicrosoftAzureMarketplace高级人工智能人才培养丛书习题4.6MicrosoftAzure服务平台4.3微软云关系数据库SQLAzure第4章微软云计算of3113SQLAzure是微软的云中关系型数据库,是基于SQLServer技术构建的,主要为用户提供数据应用。SQLAzure提供了关系型数据库存储服务,包含三部分:SQLAzure数据库SQLAzure报表服务SQLAzure数据同步4.3.1SQLAzure概述4.3微软云关系数据库SQLAzure第4章微软云计算of3114SQLAzure数据库是SQLAzure的一种云服务,提供了核心的SQLServer数据库功能;SQLAzure报表服务是基于SQLServer报表服务(SSRS,SQLServerReportingServices)实现SQLAzure数据库支持报表功能;SQLAzure数据同步让本地SQLServer数据库拥有SQLAzure数据库副本,确保网络发生故障时应用仍然能够访问数据库。4.3.2SQLAzure关键技术4.3微软云关系数据库SQLAzure第4章微软云计算of3115SQLAzure是云中的关系数据库,和本地的SQLServer数据库有很多相似的地方,也有一些不同之处。物理管理和逻辑管理:SQLAzure不能使用SQLServer备份机制,数据都是自动复制备份;服务提供:在部署本地SQLServer时,需要准备和配置所需要的硬件和软件,这些工作一般由DBA或IT部门完成。而使用SQLAzure时,这些任务均由SQLAzure服务程序来执行;Transact-SQL支持:SQLServerTransact-SQL语句的参数并不适用于SQLAzure;特征和类型:SQLAzure不支持SQLServer的所有特征和数据类型。4.3.3SQLAzure和SQLServer对比第4章微软云计算MicrosoftAzure4.4MicrosoftAzureServiceFabric4.2微软云操作系统MicrosoftAzure4.1微软云计算平台4.3微软云关系数据库SQLAzureof31164.5MicrosoftAzureMarketplace高级人工智能人才培养丛书习题4.6MicrosoftAzure服务平台4.4MicrosoftAzureServiceFabric第4章微软云计算of3117AzureServiceFabric是一个分布式系统平台,可方便用户打包、部署和管理可缩放且可靠的微服务和容器;ServiceFabric几秒内就可以高密度部署应用程序,即每台计算机部署成百上千个应用程序或容器;ServiceFabric提供一种复杂的轻型运行时,可支持无状态和有状态微服务。4.4.1AzureServiceFabric概述4.4MicrosoftAzureServiceFabric第4章微软云计算of3118ServiceFabric是利用分层子系统而生成的,包括以下子系统。传输子系统:实现点对点数据报信道;联合子系统:将各个节点拼结为它可进行推论的单个统一群集;可靠性子系统:使得ServiceFabric服务的状态高度可用;管理子系统:提供端到端服务和应用程序生命周期管理;4.4.2ServiceFabric体系结构宿主子系统:为特定节点服务,确保副本正确放置且正常运行;通信子系统:通过命名服务提供群集内部的可靠消息传送和服务发现;可测试性子系统:为测试服务而设计的工具。4.4MicrosoftAzureServiceFabric第4章微软云计算of3119ServiceFabric群集是一组通过网络连接在一起的虚拟机或物理计算机,微服务会在其中部署和管理。命名应用程序是由执行一个或多个特定功能的命名服务组成的集合。创建命名应用程序后,可以通过指定服务类型(使用其名称/版本),在群集中创建应用程序服务类型之一的实例(命名服务),有两种服务类型:无状态服务和有状态服务。创建命名服务时,需要指定一个分区方案。4.4.3ServiceFabric群集第4章微软云计算MicrosoftAzure4.5MicrosoftAzureMarketplace4.2微软云操作系统MicrosoftAzure4.1微软云计算平台4.3微软云关系数据库SQLAzureof31204.4MicrosoftAzureServiceFabric高级人工智能人才培养丛书习题4.6MicrosoftAzure服务平台4.5MicrosoftAzureMarketplace第4章微软云计算of3121微软提供了MicrosoftAzureMarketplace方便顾客寻找、购买云应用和数据集;目前,MicrosoftAzureMarket由以下两个部分组成。DataMarket:内容提供者通过DataMarket可以提供交易的数据集;AppMarket:云应用创建者通过AppMarket可以将应用展现给潜在的用户。第4章微软云计算MicrosoftAzure4.6MicrosoftAzure服务平台4.2微软云操作系统MicrosoftAzure4.1微软云计算平台4.3微软云关系数据库SQLAzureof31224.4MicrosoftAzureServiceFabric高级人工智能人才培养丛书习题4.5MicrosoftAzureMarketplace4.6MicrosoftAzure服务平台第4章微软云计算of3123MicrosoftAzure云计算服务平台现在已经包含如下功能:网站、虚拟机、云服务、移动应用服务、大数据支持、媒体服务支持、物联网平台以及人工智能服务。网站服务能够帮助开发者快速在Azure平台上部署网站。MicrosoftAzure网站服务在虚拟机内运行WindowsServer和互联网信息服务(IIS)。4.6MicrosoftAzure服务平台第4章微软云计算of3124MicrosoftAzure虚拟机服务让开发者、IT操作人员和其他用户可以在云中创建和使用虚拟机,提供一种基础框架即服务(IaaS)的云计算模式。用户可以通过MicrosoftAzure管理门户网站或者基于REST的MicrosoftAzure服务管理API创建虚拟机。4.6MicrosoftAzure服务平台第4章微软云计算of3125云服务提供平台即服务(PaaS)的云计算模式,支持高度可用的且可无限缩放的应用程序和服务,支持多层方案、自动化部署和灵活缩放。云服务也依靠虚拟机创建,它提供两种不同的虚拟机选择:一种是运行在配置IIS的WindowsServer上的WebRoles实例,另一种是运行在未配置IIS的WindowsServer上的WorkerRoles实例。4.6MicrosoftAzure服务平台第4章微软云计算of3126移动服务可通过使用MicrosoftAzure创建高性能的移动应用程序,移动服务使得连接扩展云后端到你的客户端和手机应用变得非常简单。MicrosoftAzure提供海量数据处理能力,可以从数据中获取可执行洞察力,支持Hadoop服务来进行大数据处理。需要指定所需的虚拟机数量,在云平台上创建一个Hadoop集群。4.6MicrosoftAzure服务平台第4章微软云计算of3127媒体服务是一个PaaS平台,用来为用户部署和提供媒体解决方案,具有灵活性、可缩放性和可靠性,可以为全球用户提供高质量的媒体体验。MicrosoftAzure媒体服务支持多种格式的编码、增加水印以及使用MicrosoftPlayReadyProtection进行内容加密。4.6MicrosoftAzure服务平台第4章微软云计算of3128Azure物联网(IoT)是微软托管的云服务的集合,这些服务用于连接、监视和控制数十亿项IoT资产。IoT解决方案由一个或多个IoT设备构成,这些设备与云中托管的一个或多个后端服务通信。Azure在为开发人员提供一系列人工智能(AI)服务方面处于领先地位,可以将AI服务分为三个高级别类别:AI应用和代理、知识挖掘和机器学习。第4章微软云计算MicrosoftAzure习题4.2微软云操作系统MicrosoftAzure4.3微软云关系数据库SQLAzure4.4MicrosoftAzureServiceFabricof31294.5MicrosoftAzureMarketplace高级人工智能人才培养丛书4.1微软云计算平台4.6MicrosoftAzure服务平台习题:1.微软云计算平台包含几部分?每部分的作用是什么?2.MicrosoftAzure存储服务提供了几种类型的存储方式?阐述每种存储方式主要的存储对象。3.阐述WebRole实例和WorkerRole实例之间的通信机制。4.SQLAzure数据同步技术主要有几种?分别如何实现?5.阐述SQLAzure和SQLServer的相同点和不同点。6.ServiceFabric的体系架构及各个子系统功能?7.利用VisualStudio开发一个简单的应用程序,并将其部署到MicrosoftAzure平台上。8.MicrosoftAzure是如何支持大数据处理的?第五章

Hadoop3.0:主流开源云架构5.1挑战与对策5.2

Hadoop3.0简述5.4

Hadoop3.0体系架构of3131习题5.5

hadoop3.0访问接口高级人工智能人才培养丛书5.6

Hadoop3.0生态组件第五章Hadoop3.0:主流开源云架构of3132假现有一些配置完全相同的机器cslave0~cSlaveN,cmaster0,cmaster1,并且每台机器都有1个双核CPU,5GB硬盘。现有两个大小都是2GB的文件file0和file1。第一类问题,存储。问题①:将file0和file1存入两台不同机器,但要求对外显示它们存于同一硬盘空间。问题②:不考虑①,现有一新文件file2,大小为6GB,要求存入机器后对外显示依旧为一个完整文件。第二类问题,计算。问题③:在问题①下,统计file0和file1这两个文件里每个单词出现的次数。第三类问题,可靠性。问题④:假设用于解决上述问题的机器宕机了,问如何保证数据不丢失。5.1挑战与对策5.1挑战与对策第五章Hadoop3.0:主流开源云架构of3133第五章Hadoop3.0:主流开源云架构of31345.1挑战与对策第五章Hadoop3.0:主流开源云架构of31355.1挑战与对策第五章Hadoop3.0:主流开源云架构of31365.1挑战与对策第五章Hadoop3.0:主流开源云架构of31375.1挑战与对策第五章Hadoop3.0:主流开源云架构of31385.1挑战与对策第五章Hadoop3.0:主流开源云架构of31395.1挑战与对策第五章Hadoop3.0:主流开源云架构of31405.1挑战与对策第五章

Hadoop3.0:主流开源云架构5.2

Hadoop3.0简述5.1挑战与对策5.4

Hadoop3.0体系架构of3141习题5.5

hadoop3.0访问接口高级人工智能人才培养丛书5.6

Hadoop3.0生态组件5.2Hadoop3.0简述第五章Hadoop3.0:主流开源云架构of3142CommonHDFSYARNMapReduceHadoop3.0组成第五章Hadoop3.0:主流开源云架构of3143Hadoop生态圈5.2Hadoop3.0简述第五章

Hadoop3.0:主流开源云架构5.4

Hadoop3.0体系架构5.1挑战与对策5.2

Hadoop3.0简述of3144习题5.5

hadoop3.0访问接口高级人工智能人才培养丛书5.6

Hadoop3.0生态组件第五章Hadoop3.0:主流开源云架构of31455.4Hadoop3.0体系架构HDFS逻辑架构HDFS存储数据示例HDFS主节点双活实例5.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of3146第五章Hadoop3.0:主流开源云架构of3147HDFS逻辑架构5.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31485.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of3149HDFS物理拓扑5.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of3150HDFS物理拓扑5.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31515.4Hadoop3.0体系架构MapReduce逻辑架构MapReduce执行任务时架构第五章Hadoop3.0:主流开源云架构of31525.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31535.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31545.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31555.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31565.4Hadoop3.0体系架构YARN逻辑架构YARN执行任务时架构第五章Hadoop3.0:主流开源云架构of31575.4Hadoop3.0体系架构YARN体系架构第五章Hadoop3.0:主流开源云架构of31585.4Hadoop3.0体系架构Yarn架构第五章Hadoop3.0:主流开源云架构of31595.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31605.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31615.4Hadoop3.0体系架构框架执行Yarn任务时流程强调任务逻辑完全由AppMster决定,可以不是MR逻辑AppMster是RM启动的AppMster负责任务执行和监管①Client端向RM提交任务②RM首先启动负责本此任务的AppMster③AppMster负责本此任务处理逻辑❶它首先与RM协商申请资源

❷再NM协商启动Container执行任务④AppMster完成任务后向RM注销自己Yarn架构第五章Hadoop3.0:主流开源云架构of31625.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31635.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31645.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31655.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31665.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31675.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31685.4Hadoop3.0体系架构第五章Hadoop3.0:主流开源云架构of31695.4Hadoop3.0体系架构YARN上执行MapReduce示例第五章Hadoop3.0:主流开源云架构of31705.4Hadoop3.0体系架构MapReduce框架第五章Hadoop3.0:主流开源云架构of31715.4Hadoop3.0体系架构第五章

Hadoop3.0:主流开源云架构5.5

Hadoop3.0访问接口5.1挑战与对策5.2

Hadoop3.0简述of3172习题5.4

hadoop3.0体系架构高级人工智能人才培养丛书5.6

Hadoop3.0生态组件第五章Hadoop3.0:主流开源云架构of3173HDFS自带Web接口HDFSShell接口WebHDFSRESTAPI接口HDFSJavaAPI接口5.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of3174HDFS自带Web接口

ip:500705.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31755.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31765.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31775.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31785.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31795.5Hadoop3.0访问接口MapReduce接口Web接口Shell接口API接口第五章Hadoop3.0:主流开源云架构of31805.5Hadoop3.0访问接口类

名默认类InputFormatTextInputFormatRecordReaderLineRecordReaderInputSplitFileSplitMapIdentityMapperCombine不使用PartitionerHashPartitionerGroupCompatator不使用ReduceIdentityReducerOutputFormatFileOutputFormatRecordWriterLineRecordWriterOutputCommitterFileOutputCommitter第五章Hadoop3.0:主流开源云架构of31815.5Hadoop3.0访问接口WordCountFileInputFormatWordCountMapWordCountReduceWordCountPartitionerWordCountReduceFileoOutputFormatInputSplitRecordReaderOutputCommiterRecordWriter第五章Hadoop3.0:主流开源云架构of31825.5Hadoop3.0访问接口FileInputFormatWordCountMapWordCountReduceWordCountPartitionerWordCountReduceFileoOutputFormatInputSplitRecordReaderOutputCommiterRecordWriterSequenceFileInputFormatSequenceFileOutputFormat企业级WordCount第五章Hadoop3.0:主流开源云架构of31835.5Hadoop3.0访问接口SecondarySort第五章Hadoop3.0:主流开源云架构of31845.5Hadoop3.0访问接口性能优化默认情况调优方法注意点默认块太小调整块大小受限于硬件默认不开启二进制开启二进制输入输出完美默认只用一个Reduce设置最佳Reduce数量受限于集群大小默认不开启多线程Map启用多线程Map受限于业务类型默认不开启分布式缓存开启分布式缓存受限于业务类型默认值较优增大排序时内存空间不常用默认不开启Combine开启Combine受限于业务类型默认不开启第三方存取读取第三方存取受限于业务类型默认不够用自定义数据类型完美第五章Hadoop3.0:主流开源云架构of3185YARN自带Web接口YARNShell接口YARNJavaAPI接口5.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31865.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31875.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31885.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31895.5Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31905.5Hadoop3.0访问接口并行范式示例实现M范式DistributedShell框架M-S-R范式MapReduce框架BSP范式Giraph框架第五章Hadoop3.0:主流开源云架构of31915.5Hadoop3.0访问接口①依据本部门在研项目需求书,开发ApplicationBusinessLogic模块。②判断ApplicationBusinessLogic所属并行化范式。③根据并行化范式,将ApplicationBusinessLogic改写成该范式。④罗列ApplicationBusinessLogic执行时Resource清单。⑤罗列ApplicationBusinessLogic执行时偏好清单。⑥罗列ApplicationBusinessLogic执行时环境清单。⑦编写执行ApplicationBusinessLogic的Shell脚本。①创建并启动AppMstr到RM的静态实例AMRMClientAsync。②创建并启动AppMstr到NM的静态实例NMClientAsyncImpl。③AppMstr使用AMRMClientAsync到RM注册自己。④AppMstr使用AMRMClientAsync到RM申请Containers。⑤AppMstr使用AMRMClientAsync将AppBusinessLogic下沉到Container里。⑥AppMstr使用AMRMClientAsync将其他资源下放到Container里。⑦AppMstr调用NMClientAsyncImpl启动Container。⑧AppMstr调用NMClientAsyncImpl启动监控方法监控Container。⑨根据ApplicationBusinessLogic所属范式,决定是否执行下一层Container。⑩AppMstr使用AMRMClientAsync向RM汇报应用程序执行结束。第五章Hadoop3.0:主流开源云架构of31925.5Hadoop3.0访问接口YARN应用程序标准模块DistributedShell框架对应类ApplicationBussinessLogic用户编写的Shell命令ApplicationClientClient.javaApplicationMasterApplicationMaster.javaYARN应用程序标准模块MapReduce框架对应类ApplicationBusinessLogic用户自定义Mapper类、Partition类、和Reduce类ApplicationClientYARNRunner.javaApplicationMasterMRAPPMaster.javaYARN应用程序标准模块Giraph框架对应类ApplicationBusinessLogic用户自定义BasicComputation类ApplicationClientGiraphYarnClient.javaApplicationMasterGiraphApplicationMaster.java第五章Hadoop3.0:主流开源云架构of31935.5Hadoop3.0访问接口ResourceManagerNodeManagerNodeManagerNodeManagerNodeManager第五章

Hadoop3.0:主流开源云架构5.6

Hadoop3.0生态组件5.1挑战与对策5.2

Hadoop3.0简述of3194习题5.4

hadoop3.0体系架构高级人工智能人才培养丛书5.5

Hadoop3.0访问接口第五章Hadoop3.0:主流开源云架构of31955.6Hadoop3.0生态圈组件大数据服务提供商方案提供商平台简称平台全称组

件Apache

基础组件HortonworksHDPHortonworksDataPlatform基础组件+商用组件ClouderacdhCloudera’sDistributionIncludingApacheHadoop基础组件+商用组件MapRmdpMapRDataPlatform基础组件+商用组件第五章Hadoop3.0:主流开源云架构of31965.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31975.6Hadoop3.0生态圈组件谷歌大数据组件第五章Hadoop3.0:主流开源云架构of31985.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31995.6Hadoop3.0生态圈组件Apache大数据组件

Apache是什么性质全称/别称作用apache软件HttpServerWeb服务器软件Apache组织ApacheSoftwareFoundation软件开发组织第五章Hadoop3.0:主流开源云架构of311005.6Hadoop3.0生态圈组件Apache大数据组件

Apache是什么本书参考/第五章Hadoop3.0:主流开源云架构of311015.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311025.6Hadoop3.0生态圈组件Apache大数据组件第五章Hadoop3.0:主流开源云架构of311035.6Hadoop3.0生态圈组件核心组件第五章Hadoop3.0:主流开源云架构of311045.6Hadoop3.0生态圈组件集群第五章Hadoop3.0:主流开源云架构of311055.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311065.6Hadoop3.0生态圈组件基础商用集群版第五章Hadoop3.0:主流开源云架构of311075.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311085.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311095.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311105.6Hadoop3.0生态圈组件Hive第五章Hadoop3.0:主流开源云架构of311115.6Hadoop3.0生态圈组件Hive

为什么现实需求Hive的设计目的即是让Facebook内精通SQL的分析师能够以类SQL的方式查询存放在HDFS的大规模数据集Hive起源于Facebook内部信息处理平台。由于需要处理大量新兴社会网络数据,考虑到扩展性,Facebook最终选择hadoop作为存储和处理平台1.编写MR程序2.组织处理流提交任务功能好熟悉和Pig有和区别第五章Hadoop3.0:主流开源云架构of31112Hive

是什么概念-工作过程程序员或分析师根据业务逻辑写好数据流脚本向Hive提交任务Hive会将写好的数据流处理脚本翻译成多个Hdfs,Map和Reduce操作Hive向hadoop提交任务Hive是一个构建在hadoop上的数据仓库框架5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31113Hive

是什么架构5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31114Hive

是什么-语法语法HiveQL:SQL类似数据类型基本类型:数值型、布尔型、字符串复杂类型:ARRAY、MAP和STRUCT关系操作:如x='a'算术操作:加法x+1逻辑操作:如逻辑或xory操作符函数Hive内置了上百个函数基本同SQL一样countlikeRank-------map子句reduce子句5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31115Hive

实例部署方式5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31116Hive

实例部署yuminstallhive例题①在hive里新建member表,并将表6-6中的数据载入hive里的member表中②查询member表中所有记录;查询member表中gender值为1的记录;查询member表中gender值为1且age为22的记录;统计member中男性和女性出现次数③试比较pig中“单词计数”和“统计男女出现次数”异同点身份id姓名性别年龄教育职业收入201401aa021e0p3m201402bb122e1p2l201403cc123e2p1m5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31117Hive

实例理解功能好熟悉Hive和Pig有和区别(1)hive有metadata,pig无(2)hive面向sql、Pig面向MapReduce(1)pig是没有开发好的hive(2)facebook误解hadoop用途狭义的理解5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31118Hive由来Hive是一个构建在Hadoop上的数据仓库框架,它起源于Facebook内部信息处理平台。由于需要处理大量社会网络数据,考虑到扩展性,Facebook最终选择Hadoop作为存储和处理平台。Hive的设计目的是让Facebook内精通SQL(但Java编程相对较弱)的分析师能够以类SQL的方式查询存放在HDFS的大规模数据集。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31119工作原理Hive非常简单,本质上,其相当于一个MapReduce和HDFS的翻译终端。用户提交Hive脚本后,Hive运行时环境会将这些脚本翻译成MapReduce和HDFS操作并向集群提交这些操作。Step1用户编写HiveQL并向Hive运行时环境提交该HiveQL(图中Step1)。Step2Hive运行时环境将该HiveQL翻译成MapReduce和HDFS操作(图中Step2)。Step3Hive运行时环境调用Hadoop命令行接口或程序接口,向Hadoop集群提交翻译后的HiveQL(图中Step3)。Step4Hadoop集群执行HiveQL翻译后的MapReduce-App或HDFS-App(未标)。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311205.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311215.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31122①用户接口:包括HiveShell、Thrift客户端、Web接口。②Thrift服务器:当Hive以服务器模式运行时,可以作为Thrift服务器,供多个客户端同时使用Hive。③元数据库:Hive元数据(如表信息)的集中存放地。④解析器:包括解释器、编译器、优化器、执行器。其是将HiveQL翻译成MapReduce和HDFS的核心部件。⑤Hadoop:底层分布式存储和计算引擎。Hive体系架构5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31123Hive计算模型CREATETABLEu_data(useridINT,movieidINT,ratingINT,unixtimeSTRING)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'STOREDASTEXTFILE;SELECTCOUNT(*)FROMu_data;5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31124HiveQL(Hive的SQL)数据类型基本类型数值型布尔型字符串复杂类型ARRAYMAPSTRUCT操作函数关系操作算术操作逻辑操作5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31125Hive部署Hive部署内嵌模式本地模式完全远程模式5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31126Hive部署部署Hive手工部署工具部署:使用Ambari5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31127手工部署Hive集群Step1下载并解压Hive。Step2为Hive配置Hadoop安装路径。Step3在HDFS里新建Hive存储目录。Step4启动Hive命令行。Step5验证Hive是否启动成功。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31128使用Ambari部署HiveStep1制定部署规划。Step2准备硬件机器和OS环境。Step3配置单机OS环境和集群环境。Step4部署Ambari-server。Step5使用Ambari-server部署HDFS、YARN、Hive。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31129使用Ambari部署Hive效果图5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31130Hive接口HiveWeb接口HiveShell接口HiveAPI接口Hcatalog接口Pig接口Beeline接口5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31131实战HiveWeb接口Hiveserver2IP:99995.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31132实战HiveShellDDLOperationsDMLOperationsSQLOperations5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31133实战Hive之综合示例下面的语句完成:①进入Hive命令行接口,获取Hive函数列表并单独查询count函数用法。②在Hive里新建member表,并将表11-2中的数据载入Hive里的member表中。③查询member表中所有记录,查询member表中gender值为1的记录,查询member表中gender值为1且age为22的记录,统计member中男性和女性出现次数。下面按问题顺序依次讲述。身份ID姓名性别年龄教育职业收入201401aa021e0p3m201402bb122e1p2l201403cc123e2p1m5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31134[allen@iclient0~]#hive#进入Hive命令行hive>showfunctions;#获取Hive所有函数列表hive>describefunctioncount;#查看count函数用法问答1问答2201401aa021e0p3m201402bb122e1p2l201403cc122e2p1m准备数据上传,建表,查询5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31135hive>showtables;#查看当前Hive仓库中所有表(以确定当前无member表)hive>createtablemember(idint,namestring,gendertinyint,agetinyint,edustring,profstring,incomestring)rowformatdelimitedfieldsterminatedby'\t';#使用合适字段与类型,新建member表hive>showtables;#再次查看,将显示member表hive>loaddatalocalinpath'/home/allen/memberData'intotablemember;#将本地文件m..载入HDFShive>select*frommember;#查看表中所有记录hive>select*frommemberwheregender=1;#查看表中gender值为1的记录hive>select*frommemberwheregender=1ANDage=23;#查看表中gender值为1且age为23的记录hive>selectgender,count(*)frommembergroupbygender;#统计男女出现总次数hive>droptablemember;#删除member表hive>quit;5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31136Spark5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31137基本概念Spark于2009年诞生于伯克利大学AMPLab,最初它只是伯克利大学的研究性项目。2010年时Spark正式开源,2013年,伯克利将其捐赠给Aparch基金会。2014年成为Aparch基金的顶级项目,目前已广泛应用于工业界。由来概念Spark是一个高速的通用型集群计算框架,其内部内嵌了一个用于执行DAG的(有向无环图)工作流引擎,能够将DAG类型的Spark-App拆分成Task序列并在底层框架上并行运行。程序接口层:Java、Scala、Python、R等高级语音直接编写Spark-App。接口专用组件:SQL、Mllib、GraphX、Streaming等专用组件,这些组件内置了大量专用算法,充分利用这些组件,能够大大加快Spark-App开发进度。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31138Spark主要模块(基本概念)5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31139Spark计算模型(基本概念)5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31140Spark计算模型(基本概念)5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311415.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31142MapReduce发展(基本概念)5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31143体系架构Spark体系架构资源管理层:使用自带资源管理器,使用第三方资源管理器程序执行层:逻辑一样,进程名不同资源管理层:Standalone、YARN、Mesos5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31144体系架构Spark体系架构资源管理层程序执行层主服务:Master从服务WorkerWorkerWorkerWorker从服务Eexcutor主服务:DriverEexcutorEexcutor5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31145体系架构Spark体系架构资源管理层程序执行层主服务:ResourceManager从服务NodeManager从服务Child主服务:SparkAppMasterNodeManagerNodeManagerChildChildChild5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311465.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31147Standalone资源管理器5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31148Standalone时执行层5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311495.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311505.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311515.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31152Spark集群部署概念:部署资源管理器手工部署Standalone资源管理器演示手工部署YARN资源管理器Ambari部署YARN资源管理器5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31153手工部署SparkStep1制定部署规划。Step2准备硬件机器,准备机器操作系统环境,准备机器网络环境。Step3对集群内每一台机器,修改机器名,关闭防火墙,安装jdk。Step4为每台机器,添加集群级别域名映射。Step5打通主节点到自身无密钥认证,打通主节点到所有从节点无密钥认证。Step6主节点解压Spark,配置spark。Step7将配置好的Spark复制至所有slave机。Step8启动Spark。Step9测试Spark。5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31154手工部署Spark效果图5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31155现有一原始文件rawFile0,要求将rawFile0均匀加载到cslave0、cslave1和cslave2中,然后对rawFile0中数据执行过滤操作,过滤时要求只保留"aa"、"bb"这两种字符。接着,将"aa"全部发往cslave0上、"bb"全部发往cslave1上。最后统计"aa"和"bb"这两个单词出现次数。示例1:使用MapReduce模式统计单词出现次数aa,1bb,2aa,1bb,2cslave0cslave15.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311565.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31157valconf=newSparkConf()valsc:SparkContext=newSparkContext(conf)valrawRDDA=sc.parallelize(List("!!bb##cc","%%ccbb%%","cc&&++aa"),3)valrawRDDB=sc.parallelize(List(("xx",99),("yy",88),("xx",99),("zz",99)),2)valrawRDDC=sc.parallelize(List(("yy",88)),1)importorg.apache.spark.HashPartitionervartmpResultRDDA=rawRDDA.flatMap(line=>line.split("")).filter(allWord=>{allWord.contains("aa")||allWord.contains("bb")}).map(word=>(word,1)).partitionBy(newHashPartitioner(2)).groupByKey().map((P:(String,Iterable[Int]))=>(P._1,P._2.sum))vartmpResultRDDBC=rawRDDB.distinct.subtract(rawRDDC)valresultRDDABC=tmpResultRDDA.union(tmpResultRDDBC)resultRDDABC.saveAsTextFile("HDFS路径")5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31158Zookeeper5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31159Zookeeper

为什么现实需求部分失败当一条消息在网络中的两个节点之间传送时,由于可能会出现各种问题,发送者无法知道接收者是否已经接收到这条消息,比如在接收者还未接收到消息前,发生网络中断,再比如接收者接收到消息后发生网络中断,甚至是接收进程死掉。发送者能够获取真实情况的唯一途径是重新连接接收者,并向它发出询问。即在分布式环境下甚至不知道一个操作是否已经失败。分布式系统固有特征网络中断iReceive宕机5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31160Zookeeper

概念概念Zookeeper(又称分布式锁)是由开源组织Apache开发的一个的高效、可靠的分布式协调服务。Zookeeper典型应用-工作过程5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31161Zookeeper数据结构树形目录结构5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31162Zookeeper工作过程基于Paxos算法自身工作过程:选举Leader、原子广播对外服务过程:读、读任意一个节点对外服务过程:写、Leader同意5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31163Zookeeper工作过程对外服务过程、读:读任意一个节点

读某个Follow,调用该Follow的sync,确保给Follow尽量和Leader一致对外服务过程、写:Leader同意

写某个Follow时,该Follow将写转发给Leader,Leader将该写更新至集群内其他机器,超过一半机器得到更新后,即认为更新完成,写操作成功5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31164Zookeeper

架构架构工作原理:Paxos算法5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31165Zookeeper部署5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31166Zookeeper应用示例5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31167Zookeeper应用示例5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31168Zookeeper读写操作5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of311695.6Hadoop3.0生态圈组件HBase第五章Hadoop3.0:主流开源云架构of31170HBase

为什么现实需求在线访问分布式数据库在线实时服务客户欲实时读HDFS里数据太慢缓存机制索引机制2006年谷歌发表论文BigTable,年末、微软旗下自然语言搜索公司Powerset出于处理大数据的需求,按论文思想,开启了HBase项目5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31171HBase

是什么概念是一个高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统基于列的而不是基于行的模式适合于存储非结构化数据HBase架构在hadoop之上怎么架构在hadoop之上HBase架构5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31172HBase

是什么架构MemStoreStoreFileHfileStoreFileHfileMemStoreStoreFileHfileMemStoreStoreFileHfileStoreFileHfileMemStoreStoreFileHfileHMaster5.6Hadoop3.0生态圈组件第五章Hadoop3.0:主流开源云架构of31173HBase

数据模型逻辑模型行健时间戳列族contents列族anchor列族mime"n.www"t9anchor:="CNN"t8anchor:my.look.ca="CNN.com"t6contents:html="<html>…"mime:type="text/html"t5conten

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论