




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《信息技术导论》课程教案课题:第一章云计算教学目的:1.了解云计算的概述;2.正确理解云技术架构及其技术;3.掌握云计算系统的使能技术;4.掌握。课型:新授课课时:本章安排5个课时。教学重点:重点:掌握云计算系统的使能技术。教学难点:难点:掌握。教学过程:教学形式:讲授课,教学组织采用课堂整体讲授和分组演示。教学媒体:采用启发式教学、案例教学等教学方法。教学手段采用多媒体课件、视频等媒体技术。板书设计:本课标题云计算课次3授课方式理论课□讨论课□习题课□其他□课时安排5学分共2分授课对象企业管理人员的培训任课教师教材及参考资料1.《信息技术导论》;电子工业出版社。2.本教材配套视频教程及学习检查等资源。3.与本课程相关的其他资源。教学基本内容教学方法及教学手段引导案例什么是云计算?美国国家标准与技术研究院对此有这样一个权威和经典的定义:“所谓云计算,就是这样一种模式,该模式允许用户通过无所不在的、便捷的、按需获得的网络接入到一个可动态配置的共享计算资源池(包括网络设备、服务器、存储、应用及业务),并且以最小的管理代价或业务提供者交互复杂度即可实现这些可配置计算资源的快速发放与发布。”云计算的目标是将计算和存储简化为像水和电一样易用的资源,用户只要连上网络即可方便地使用,按量付费。云计算具有灵活的计算能力并提供了高效的海量数据分析方法,企业不需要构建专用的数据中心就可以在云平台上运行各种各样的业务系统,这种计算模式和商业模式吸引了产业界和学术界的广泛关注。虚拟化是云计算的基石,是云计算重要的支撑技术。参考以下形式:1.衔接导入2.悬念导入3.情景导入4.激疑导入5.演示导入6.实例导入7.其他形式本章基本知识汇总第一节云计算概述一、云计算的产生与发展20世纪60年代只有大型机,20世纪70年代计算机的操作系统以UNIX为主导,小型机开始成为主流。个人计算机(PC)时代到来的标志是原来昂贵的、只在特殊行业使用的大型机发展成为每个人都能负担得起、每个人都会使用的个人计算机。个人计算机时代的到来提高了个人的工作效率和企业的生产效率。互联网时代的到来使数亿计的单个信息孤岛汇集成庞大的信息网络,方便了信息的发布、收集、检索和共享,极大地提高了人类沟通、共享和协作的效率,提高了社会生产力,丰富了人们的社交和娱乐活动。可以说,当前绝大多数企业、学校的日常工作都依赖于互联网。1959年6月,ChristopherStrachey发表关于虚拟化技术的论文,虚拟化技术是云计算基础架构的基石。1962年,J.C.R.Licklider提出“星际计算机网络”设想。1984年,Sun公司的联合创始人JohnGage提出了“网络就是计算机”的名言,用于描述分布式计算技术带来的新世界,今天的云计算正在将这一理念变成现实。1997年,南加州大学教授RamnathK.Chellappa提出云计算的第一个学术定义:“计算的边界可以不是技术局限,而是经济合理性。”1998年,VMware公司成立并首次引入x86的虚拟化技术。1999年,MarcAndreessen创建了LoudCloud,LoudCloud是第一个商业化的IaaS平台。同年公司成立,宣布“软件终结”革命开始。2000年,SaaS兴起。2006年3月,亚马逊推出弹性计算云(ElasticComputeCloud)服务。2006年8月,谷歌首席执行官埃里克·施密特在搜索引擎大会首次提出“云计算”(CloudComputing)的概念。2008年2月,IBM宣布将在中国无锡太湖新城科教产业园为中国的软件公司建立全球第一个云计算中心。2010年,阿里巴巴旗下的“阿里云”正式对外提供云计算商业服务。2013年9月,华为面向企业和运营商客户推出云操作系统FusionSphere3.0。2015年3月,第十二届全国人民代表大会第三次会议提出制定“互联网+”行动计划,推动移动互联网、云计算、大数据、物联网等与现代制造业结合,促进电子商务、工业互联网和互联网金融健康发展,引导互联网企业拓展国际市场。2015年10月,教育部颁布《普通高等学校高等职业教育(专科)专业目录(2015年)》,“云计算技术与应用”列入新的专业目录。2016年9月,教育部颁布《普通高等学校高等职业教育(专科)专业目录(2016年)》,“大数据技术与应用”列入新的专业目录。据中国信息通信研究院发布的《云计算白皮书(2020)》,2019年我国公有云市场规模首次超过私有云。2019年我国云计算整体市场规模达1334亿元,增速38.6%。其中公有云市场规模达689亿元,相比2018年增长57.6%,2020—2022年仍处于快速增长阶段,到2023年市场规模将超过2300亿元。云计算的内涵与特性云计算有狭义和广义之分。狭义的云计算是指IT基础设施的交付和使用模式;广义的云计算是指服务的交付和使用模式,这种服务可以是和软件、互联网相关的,也可以是任意的其他服务。云计算具有如下特性。(1)计算资源集成提高设备计算能力。云计算把大量计算资源集中到一个公共资源池中,通过多主租用的方式共享计算资源。虽然单个用户在云计算平台获得的服务水平会受到网络带宽等因素的影响,但是从整个社会资源的角度而言,整体的资源调控降低了部分地区资源的峰值荷载,提高了部分荒废主机的运行率,从而提高了资源利用率。(2)分布式数据中心保证系统容灾能力。分布式数据中心可以将云端的用户信息备份到地理上相互隔离的数据库主机中,甚至用户自己也无法判断信息的确切备份地点。该特点不仅提供了数据恢复的依据,也使得网络病毒和网络黑客的攻击失去目的性,大大提高了系统的安全性和容灾能力。(3)软硬件相互隔离减少设备依赖性。虚拟化层将云平台上方的应用软件和下方的基础设备隔离开来。设备的维护者无法看到设备中运行的具体应用。同时对于软件层的用户而言,基础设备层是透明的,用户只能看到虚拟化层中虚拟出来的各类设备。这种架构既减少了对设备的依赖性,也为动态的资源配置提供了可能。(4)平台模块化设计体现高可扩展性。目前主流的云计算平台均根据SPI架构在各层集成了功能各异的软硬件设备和中间件软件。大量中间件软件能够提供针对该平台的通用接口,允许用户添加本层的扩展设备。部分云与云之间提供的接口,允许用户在不同云之间进行数据迁移。类似的功能更大程度上满足了用户需求,集成了计算资源,是未来云计算的发展方向之一。(5)虚拟资源池为用户提供弹性服务。云计算平台管理软件将整合的计算资源根据应用访问的具体情况进行动态调整,包括增大资源的要求和减少资源的要求。云计算对于非恒定需求,如对需求波动很大、阶段性需求等,具有非常好的应用效果。在云计算环境中,既可以对规律性需求通过事先预测事先分配,也可以根据事先设定的规则进行实时调整。弹性的云计算服务可以帮助用户在任意时间得到满足需求的计算资源。(6)按需付费降低使用成本。作为云计算的代表,按需提供服务和按需付费是目前各类云计算服务中不可或缺的一部分。对于用户而言,云计算不仅省去了基础设备的购置和运维费用,而且能根据企业成长的需要不断扩展订购服务,提高了资金的利用率。云计算的发展目标、任务与价值云计算作为一种技术手段和实现模式,使得计算资源成为向大众提供服务的社会基础设施,将对信息技术本身及其应用产生深刻影响。美国的微软、亚马逊、IBM等大牌厂商,都将云计算列为自己的核心战略,国内的百度、阿里巴巴、腾讯、华为、浪潮等主流IT企业也都已经在云计算领域各显神通。据统计,2015年我国云计算产业规模已达1500亿元,产业发展势头迅猛、创新能力显著增强、服务能力大幅提升、应用范畴不断拓展,已成为提升信息化发展水平、打造数字经济新动能的重要支撑。据业界预测,到2025年,80%的企业应用将运行在云中,100%的应用将在云中开发,软件的开发、测试、部署、运维都将在云中进行,软件开发工具本身也将服务化和云化,并将和企业云平台进行集成。云计算的任务具体体现在:发展新技术,提升处理能力;提供新模式,实现按需服务;形成新业态,拓宽应用范畴。第二节云计算系统的架构一、云计算系统架构的参考模型云计算系统的业务模型业务系统是商业模式的核心,云计算作为一种服务的商业模式,高效运营的业务系统是云计算企业重要的竞争优势之一。水、电服务是将水、电作为资源提供给用户,云计算服务提供则是提供IT资源,如云主机、云存储、VPC、网盘等,用户可以根据自己的需要通过自助、付费的方式按需获取这些资源,从而得到服务。随着近几年云计算市场的发展,云计算服务已经随处可见,通常将这些服务归为基础设施即服务(InfrastructureasaService,IaaS)、平台即服务(PlatformasaService,PaaS)、数据即服务(DataasaService,DaaS)、软件即服务(SoftwareasaService,SaaS)四大类,如图1-3所示。除了这四类服务,根据用户的需求,云计算服务也衍生出了其他一些服务类型,如容器即服务(ContainerasaService,CaaS)、数据库即服务(DatabaseasaService,DBaaS)等。借助这些云服务,用户可以像用水用电一样便捷地获取和使用计算、存储、网络、大数据、数据库等IT资源。云计算系统的部署模型根据IT资源部署的方式,以及面向服务对象的不同,可以把云服务分为公有云、私有云和混合云三类,这三类云服务部署模型的特点见表1-1。1.公有云(PublicCloud)公有云也称公共云,是指云服务提供商通过互联网提供的计算服务面向希望使用或购买的任何组织和个人。公有云可以免费或按需出售,允许用户根据CPU内存、存储、带宽等使用量支付费用。公有云具有以下特点:(1)快速获取IT资源。用户可以通过互联网获取所需的计算、存储、网络等资源,免去了自建系统漫长的周期与高昂的成本。(2)按需使用,按量付费。用户根据业务需求订购所需的资源配置与数量,用多少买多少,不需要考虑预留资源,节约了成本。(3)弹性伸缩,在访问量突发增长的时候,系统可以根据策略动态增加相应的资源,以保证业务可用性;当访问量回落之后,系统可以释放相应的资源,避免浪费。(4)安全可靠。公有云服务提供商通过多个可用区和区域的架构设计,保证了系统整体的健壮性;用户数据有多个副本,有严格的访问控制,用户不用担心数据丢失、病毒侵扰等问题。目前比较知名的公有云服务提供商有亚马逊的AWS、微软的Azure及国内的阿里云、腾讯云、移动云、电信云等。2.私有云(PrivateCloud)私有云也称专用云,部署在企业数据中心或安全的主机托管场所,是为企业单独使用而构建的专有资源,一般不直接连接外部网络私有云具有以下特点:(1)安全可控。私有云一般会在网络出口位置部署防火墙、抗分布式拒绝服务(DistributedDenialofServiceAttack,DDoS)设备、入侵检测系统(IntrusionDetectionSystem,IDS)、入侵防御系统(IntrusionPreventionSystem,IPS)、Web应用防护系统(WebApplicationFirewall,WAF)等设备保证私有云网络的安全。业务数据是企业的核心资产,所以用户操作行为都会被记录和审计,数据在私有云内部可以得到严格的控制。(2)服务质量保证。部署在企业数据中心的私有云可以提供高速、稳定的业务访问体验,不会受到网络不稳定、断网、黑客攻击等的影响。(3)良好的兼容性。企业的一些系统,因为架构和性能的要求,并不一定适合部署在公有云上,而私有云可以兼容原有系统,并且对原有IT资源也可以实现统一管理,保护企业投资。3.混合云(HybridCloud)混合云是公有云和私有云的融合,通过专线或VPN将企业私有云和公有云连通,实现私有云的延伸,是近年来云计算的主要模式和发展方向。混合云具有以下特点:(1)安全扩展。私有云的安全性超越公有云,但公有云的海量资源又是私有云无法企及的。混合云可以较好地解决这个问题,既可以将内部的重要数据保存在私有云中,同时也可以使用公有云的计算资源,从而更高效地完成工作。(2)成本控制。私有云配置的容量一般只能满足企业业务的近期需求,往往不会预留太多资源,在业务高峰时期会出现资源不足的情况,而如果为了短暂的高峰时期购买大量资源就会造成投资回报率低的问题。混合云可以缓解这个难题,即在业务高峰时期将访问引导到公有云上,以缓解私有云上的访问压力。(3)新技术引入。私有云追求的是系统整体的安全稳定,公有云上产品和服务的丰富程度远超私有云,同时还在不断更新和上线新的产品和服务;混合云突破了私有云的限制,让企业可以迅速体验新产品,在引入私有云之前进行充分测试,降低了企业引入新服务的成本。第三节云计算系统的使能技术一、分布式技术加强云计算服务平台建设、构建下一代信息基础设施是IT技术演进的重要方向。如何在云中对大规模数据进行高效的计算和存储成为发展中的关键问题,前者是在前端对外部应用进行计算,后者是在后台对应用数据进行存储。分布式系统既是计算机系统,特别是云化的计算机系统的核心思想之一,也是分布式计算和分布式存储的支撑主体。理解分布式系统的概念,首先要了解集中式系统。集中式系统是指一个主机带多个终端的系统,整个系统的数据存储、控制与处理完全交由主机处理,每个终端没有数据处理能力,仅仅负责数据的输入和输出。集中式系统最大的特点就是部署结构简单,但是,由于采用单节点部署,很可能带来系统过大而难以维护、发生单点故障等问题。为了解决集中式系统面临的挑战,分布式系统应运而生。所谓分布式,就是一件事分给多台机器,所有机器一起完成任务。分布式意味着采用多台普通计算机组成分布式集群对外提供服务。计算机越多,计算的资源也就越多,能够处理的并发访问量与数据量也就越大。分布式系统通常定义为,一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统。虚拟化技术云计算的核心技术之一是虚拟化技术,虚拟化技术是云计算体系架构中虚拟化池层的主要支撑技术。所谓虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟化技术源于大型机的虚拟分区技术。早在20世纪60年代,IBM公司就发明了一种操作系统虚拟机技术,即在一台主机上运行多个操作系统,以使用户尽可能地充分利用昂贵的大型机资源。随着技术的发展,大型机的相关技术开始向小型机移植,但真正使用大型机和小型机的用户毕竟还是少数。虚拟化技术不仅仅是一种技术,还反映出一种服务化的思想。服务器、存储架构、数据库等所有硬件或软件资源都被抽象成一种便于重组、聚合、配置的“服务”,形成一个可以被用户灵活调用的资源池,从而实现外部用户业务系统和IT软件和硬件环境的解耦。这意味着外部用户业务系统无须了解软件和硬件的实现细节,就能方便地使用各式各样的软件和硬件资源。云平台技术云计算的本质就是将计算能力作为一种较小粒度的服务提供给用户,按需使用和付费,具有经济、快捷、柔性等特性。云平台技术是支撑云计算的基础技术,云平台技术主要有四种:服务计算技术、多租户技术、容器技术和边缘计算技术。1.服务计算技术设想一个基于云服务的手机游戏开发场景,游戏创业团队最大的优势是内容上的创新,但是技术能力上的不足会严重影响他们的创新,如自主部署服务器的运行环境至少需要3个月的时间。本来自己拥有一个好的创意,却因为开发周期过长,导致这个创意被别人抢先一步发布,这对创业者的打击是十分沉重的。那么,如何大大缩短游戏创业团队的开发周期?答案是利用服务计算技术支撑该业务要求。随着网络技术的发展,出现了一种利用网络进行应用集成的解决方案——Web服务(WebService)。Web服务是一个用统一资源标识(UniformResourceIdentifier,URI)的软件实体,其接口和绑定可以用XML协议定义、描述和发现。Web服务具有以下优点:(1)良好的封装性。(2)标准协议性。(3)松散耦合性。(4)高度集成性。2.多租户技术设想一个政务云办公权限分配的场景,近两年政务云的发展非常迅速,从许多地方政府披露的信息来看,政务云已拓展到乡镇一级,这为提高电子政务效率、惠及于民打下坚实的基础。政务云迅猛发展的同时,也出现了新的问题,那就是不少地方的政务云只追求快速上线,而忽视数据安全保障体系的构建,特别是权限设置。例如,如何在政务云中做好不同权限的人员获取不同级别的数据呢?多租户技术可以解决这个问题。多租户技术(Multi-tenancyTechnology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的数据隔离且业务互不影响。其主要研究内容为在共用的数据中心内如何以单一系统架构与服务提供多数客户端相同甚至可定制化的服务,并且仍然可以隔离用户数据。3.容器技术设想一个平台虚拟化管理的场景,某公司的平台上,一台16核32GB内存的虚拟机上,需要跑500个以上用户的应用,在一台机器上开500个虚拟机,虽然可以在资源隔离方面做得很好,但这种虚拟化本身带来的资源消耗太严重。那么,如何在平台上,进行虚拟化的有效管理呢?容器技术可以解决该问题。虚拟化技术已经成为一种被大家广泛认可的服务器资源共享方式,但是虚拟化技术仍然存在一些性能和资源使用效率方面的局限。一方面,每个虚拟机都是一个完整的操作系统,所以需要给其分配物理资源,当虚拟机数量增多时,操作系统本身消耗的资源势必增多;另一方面,开发环境和线上环境通常存在区别,所以开发环境与线上环境之间无法达到很好的桥接,在部署线上应用时,依旧需要花时间去处理环境不兼容的问题。因此出现了一种称为容器(Container)的新型虚拟化技术来帮助解决这些问题。容器可以把开发环境及应用整个打包带走,打包好的容器可以在任何环境下运行,这样就可以解决开发环境与线上环境不一致的问题了。4.边缘计算技术设想一个安全城市的场景,某城市计划安装上百万个摄像头,以提升社会公共安全。例如,通过监视共享车辆服务中司机的驾驶行为来触发报警,由于摄像头很少具备计算功能,因此大量的视频数据不得不通过网络传输至云计算数据中心来处理。然而,这将导致大量的网络带宽消粍,并影响安全事件的响应时间。因此,就需要边缘计算技术来解决这个问题。边缘计算技术针对云计算模型的集中式服务所导致的网络传输开销大、用户需求响应速度慢等缺点,通过在用户侧的网络边缘就近提供计算、存储、网络等服务,来缩短数据传输路径以减少带宽消耗,并高效响应用户的业务需求。在实际使用中,云计算通常会融入边缘计算技术,实现“云边协同”架构,以对不同的用户需求予以灵活部署。第四节云计算系统的管理与服务一、云计算系统的硬件管理1.云设备选型及供应链管理21世纪初,云计算服务的早期,各个云计算厂商通过硬件的管理实践总结出经验,不约而同对云计算的硬件发展方向达成了通用性、低成本的共识,主要满足用户四点核心需求。(1)云计算应该是低成本的。无论是企业用户还是个人用户,使用云计算服务的首要原因都是云计算服务比自己实施要便宜。对于企业用户,通过云计算服务可以大幅削减服务器采购、网络构建、应用部署等支出。个人用户对价格更加敏感,常用的构建个人网站、存储个人数据等,其价格必须比个人使用PC及一般网络接入的成本更低。(2)云计算应该是通用的。业务逻辑和业务数据分析涉及商业秘密和个人隐私,用户通常会选择自行研发或采购专业的软件服务。因此,云计算服务商所提供的服务或产品必须与现有的操作系统接口、硬件驱动软件等完全兼容,并且应该尽量涵盖所有主流操作系统环境、软件开发和运行环境。(3)云计算应该是可持续的。用户对云计算服务商的要求是,其必须能够长时间、稳定、高质量地提供基础设施与系统软件服务,并且投入足够的资源跟进软件和硬件的升级,以及解决用户的稳定性问题。(4)云计算应该是开放的。由于对云计算有需求的用户的差异性极大,从专业的软件和硬件研发人员,到普通IT从业者,再到每个公司各自的业务人员,涉及面非常广。用户这样的组成模式,需要云计算厂商有能够适应各类用户的开放性接口,因此云计算应该是开放的。2.针对云存储需求的云原生存储设备随着云上人工智能、大数据需求的迅猛发展,数据中心对存储产品的要求正在发生深刻变化。过去以标准SSD固态硬盘为基础的传统架构,在性能、成本、灵活性、供应及服务响应等诸多方面,都越来越无法满足下一代数据中心的需求。针对这些问题,云计算服务商需要提供更加先进和多样的存储硬件来满足海量云上用户的差异性需求。云计算系统的软件研发管理 1.传统软件生命周期管理简述软件的生命周期包括七个阶段:(1)问题定义。软件开发者和用户讨论阶段,旨在明确软件的开发目标并论证其可行性。(2)需求分析。将软件的开发目标细化成体系的功能和性能需求。传统的软件研发思路对这一阶段非常重视,软件生命周期中大量的时间会消耗在这一阶段。(3)系统设计。根据需求分析的结果设计整个软件系统,包括系统框架设计、数据库设计、用户界面设计等。(4)编码。将系统设计方案转换成计算机代码和可执行程序。(5)测试。编码结束后,需要通过测试环节验证软件的功能指标、性能指标,以及编码质量。测试通常包括白盒测试和黑盒测试。(6)部署。将软件上线运行。(7)维护。软件投入使用后的可用性维护,以及根据用户、运行环境需求做的小规模调整等工作。2.基于敏捷开发原则的云软件生命周期管理敏捷开发与传统的软件生命周期模型并不是割裂的,只是更加强调简洁、研发流程的叠加、提升开发效率和响应时间。云计算系统的软件开发,以不断变化的市场需求和用户需求为核心,将设计、开发、测试、上线、文档撰写等工作高度交叉和叠加,其目的是最快速地满足市场需求,执行过程中需要关注以下四个方面:(1)快速迭代。通常以小版本的快速迭代为主。(2)架构师、开发人员、测试人员共同参与需求讨论。不限线上线下形式的研讨组,所有人在任何时间都可以实现信息同步,保持不间断沟通。(3)需求文档从用户工作案例出发。使用用户的实际工作场景编写需求文档,而不是系统性的解决方法和实施技术。(4)借助用户的力量。利用好用户测试的机会,在产品正式上线收费前,得到第一手的用户真实需求资料售后服务体系由于公有云的公共基础平台属性,其用户的差异性很大,因此在传统的电话售后的基础之上,云售后服务还应根据不同用户的能力和特点,给出定制的服务。除此之外,云计算厂商在培训认证、技术生态方面也需要投入,如此才能构建一个良好的云技术环境。下面分别详述云用户的分类服务、开发人员的培训服务,以及技术生态构建方面的情况。1.用户分类服务体系云上用户可以分为以下三类:(1)普通用户。为自己的网站、数据、计算需求寻找便宜可靠的供应商。(2)开发人员。有开发能力的人员,如受雇于技术公司、利用云资源为企业搭建业务系统的人员。(3)企业。将生产系统部署在云上的企业,云系统故障会对这类企业产生重大影响。云计算厂商对如上三类用户应当灵活给出不同的服务模式,配备经验丰富的技术支持工程师,服务内容涵盖技术、产品、解决方案及架构,支持方式包括网站、即时通信工具、邮箱、电话等,应全天候为用户提供支持,帮助用户基于云计算厂商提供的产品和功能进行产品使用、设计、应用开发及数据管理等。2.培训认证体系对于企业用户而言,使用云基础设施开发项目、发布服务,需要有云上开发知识和背景的专业人才。一方面,需要有人梳理云上的知识经验,将其系统化为基础课程和专业应用课程的课程体系;另一方面,也需要有全面的人才能力认证制度,让企业在招聘的时候能够快速评判潜在的员工。3.技术生态与技术体系各个主流云计算厂商均有官方的技术交流社区,这里介绍几个典型社区。(1)云栖社区。为阿里云经营的云技术交流平台,广大开发者通过这个官方社区提供的平台发布技术帖,并通过互动功能讨论技术问题。社区的组织者还经常组织线下活动,进一步促进开发者形成良性的互相学习交流机制。(2)亚马逊AWS技术社区。AWS的中文技术社区活跃于CSDN的AWS频道,其组织频道包括博客、论坛、技术视频、应用案例等常见形式。(3)微软Azure技术社区。微软Azure社区是微软官方的技术支持网站,其组织形式与门户网站有些类似,一方面集成了自有的解决方案、文档、培训频道,另一方面还将MSDN技术论坛、StackOverflow技术问答中关于Azure的技术文章整合在了一起。(4)华为云社区。华为云社区为华为云的官方技术资料分享平台,内设博客、论坛、问答、专题、云市场热点等频道,以及帮助用户学习使用华为云服务产品的视频课程。(5)其他第三方云计算技术社区。网络上还有多家涉及云计算技术的第三方技术交流平台,包括开源中国社区、CSDN等。云计算系统的运维1.产品设计运维准入对于一个动辄数百万个用户可见的产品,以及支撑这些用户产品的大量的后台软件所组成的云计算平台,运维的主要工作不是在产品上线后,而是必须要在产品的设计开发阶段就将其作为核心任务来考虑。产品在设计时需要满足以下几点:(1)热升级。云产品必须支持热升级,升级过程中对业务的影响要小于一个极小的比例,并且要能正确处理错误客户端。(2)模块服务冗余。产品相关模块不存在单点故障,所有模块均要有冗余,并且单台机器故障(包括宕机、网络不通、磁盘故障、磁盘满等)不能影响服务的正常使用。(3)数据容灾。单台机器故障(包括宕机、网络不通、磁盘故障、磁盘满等)不能导致数据丢失,关键数据应支持多机房或异地灾备。(4)过载保护。云产品必须设计过载保护,不能因为压力过大而导致服务不可用。过载保护包括每秒访问次数和每秒访问次数限制等。(5)安全防攻击。对公有云提供服务的业务,都必须考虑接入安全防攻击体系。2.产品线上的监控级运维工具云产品在上线时,需要接入基础监控及应用级的监控。(1)基础监控。包括系统级别的CPU、内存、网卡、负载等,具体报警阈值由各个产品的特点来定;还必须包括进程、端口、JVM(Java虚拟机)等的监控。(2)应用级的监控。包括整体应用的工作状态、负载情况监控等,其具体的监控实现方式包括运行日志关键字类型的监控等。监控添加完毕,必须验证监控的可用性。3.数据中心自动化运维数据中心是云计算的基础设施,服务器资源分配、带宽分配、业务支撑能力、流量防护和清洗能力,都是基于数据中心的大小和其带宽的容量,数据中心分布在不同的核心城市并辐射到周边城市提供基础支撑。云计算系统的数据中心运维策略,就是要在数据中心的基础上找到尽量高效利用云资源的方法。数据中心运维自动化是一组将静态的设备结构转化为根据数据中心服务需求动态弹性响应的策略,目的就是实现数据中心运维的质量,降低成本。可以说自动化一定是数据中心运维最重要的属性之一,并且需要与之配套一系列软件和硬件平台环境及体系。1.教学以学生学习教材的基本内容为主,系统全面地学习税收制度的构成要素的基本内容。2.整个教学过程中,各教学点可根据实际情况,进行拓展知识的讲解。本章小结:本章以云计算架构技术为核心,围绕云计算架构涉及的核心技术和商业实践展开,包括云计算概述、云计算系统的架构、云计算系统的使能技术、云计算系统的管理与服务等内容,涵盖了云计算的发展趋势、原理、特性与实践。云计算诞生至今已有十几年,这十几年来,云计算的技术条件、行业和市场环境均发生了巨大变化,人们对云计算的认知需求也从粗浅概念阶段发展到深度探索阶段。同时,云计算的未来发展前景也十分广阔,尤其与人工智能、大数据、边缘计算等技术的深度融合,将进一步提高云计算的智能化、高效化、安全化程度。未来云计算的发展主要体现在以下几个方面:1.云计算与人工智能的融合:青云科技等公司已经开始探索将云计算与AI技术结合,推出AI智算平台,实现对多元算力的统一调度和管理,这代表了云计算未来的发展方向。2.边缘计算的发展**:随着物联网设备的广泛应用,边缘计算技术得到了快速发展,云计算将与其他计算模式如边缘计算、分布式计算等结合,提供更加强大的计算能力。3.云安全的发展:随着云计算在各领域的广泛应用,云安全的重要性日益凸显,加密计算、隐私计算等技术的发展将进一步提高云的安全性。4.云服务的个性化和差异化:云计算服务的个性化和差异化将成为趋势,企业可以根据自身需求选择更加灵活、个性化的云服务。5.云平台的开放和互联:未来云平台将更加开放和互联,实现不同云平台、不同云服务之间的无缝对接。总体来说,云计算将会在未来进一步深度融合各类先进技术,提升自身的能力和效率,为各行业提供更加智能、高效、安全的云服务。《信息技术导论》课程教案课题:第二章大数据教学目的:1.了解大数据的内涵;2.明确大数据技术的地位;3.掌握大数据的来源、采集以及治理方式;4.熟练掌握数据的储存与管理;5.掌握数据安全保护的策略;6.了解大数据现实中的应用实例。课型:新授课课时:本章安排11个课时。教学重点:重点:大数据的来源、采集以及治理方式。教学难点:难点:数据安全保护的策略。教学过程:教学形式:讲授课,教学组织采用课堂整体讲授和分组演示。教学媒体:采用启发式教学、案例教学等教学方法。教学手段采用多媒体课件、视频等媒体技术。板书设计:本课标题大数据课次6授课方式理论课□讨论课□习题课□其他□课时安排11学分共2分授课对象企业管理人员的培训任课教师教材及参考资料1.《信息技术导论》;电子工业出版社。2.本教材配套视频教程及学习检查等资源。3.与本课程相关的其他资源。教学基本内容教学方法及教学手段引导案例社交媒体已成为现代政治变革的重要工具。以阿拉伯之春为例,2010年底,突尼斯爆发抗议活动,随后蔓延至埃及、利比亚等国家。社交媒体在这场变革中发挥了至关重要的作用。当时,突尼斯和埃及的互联网使用率分别达到23.5%和28.5%,许多年轻人通过Facebook、Twitter等平台传播信息、组织抗议活动,成功地引起了国际社会的关注。大数据在分析社交媒体数据方面具有重要意义。通过对社交媒体上的帖子、评论、图片等数据进行挖掘和分析,可以了解民众的意见、情绪和行为趋势。在政治变革中,这种分析有助于政策制定者和企业了解民情、预判风险,为决策提供有力支持。以我国为例,政府在应对突发事件和舆论监督方面已开始利用大数据技术。通过分析社交媒体上的热点话题和民众情绪,政府可以及时掌握社会动态,采取有效措施化解危机。同时,企业也可以借助大数据分析,了解消费者需求和市场趋势,调整经营策略。然而,在利用社交媒体数据进行分析时,也需要关注伦理和隐私问题。如何在保护用户隐私的前提下,合理利用大数据为用户提供更好的服务,是当前社交媒体平台和企业需要面临的挑战。此外,大数据分析结果可能存在偏差,如何确保分析结果的准确性和可靠性,也是需要关注的问题。参考以下形式:1.衔接导入2.悬念导入3.情景导入4.激疑导入5.演示导入6.实例导入7.其他形式本章基本知识汇总第一节大数据概述一、大数据的内涵和外延大数据(BigData),这个如今耳熟能详的名字是在《自然》(Nature)杂志2008年的专辑BigData中首次提出来的,Google公司在推动世界范围内信息整合的过程中,极大地推动了大数据技术的创新和发展。然而,何为大数据的内涵和外延呢?由于大数据是新衍生出来的概念,它的内涵和外延也在不断拓展和变化,目前还没有一个被业界广泛采纳的明确定义。2011年5月,麦肯锡全球研究院(MGI)在报告《大数据:创新、竞争和生产力的下一个前沿》中这样描述:大数据是指其大小超出了典型数据库软件的采集、储存、管理和分析等能力的数据集。几乎同时,IDC(InternationalDataCorporation)在编制的年度数字宇宙研究报告《从混沌中提取价值》中给大数据下了一个定义:一般涉及两种或两种以上数据形式;数据量超过100TB并且是高速、实时的数据流。大数据的“4V”特性:(1)Volume:数据量巨大。数据量巨大是大数据区别于传统数据的显著特征。一般关系型数据库处理的数据量为TB级,大数据的数据量通常是PB级或更高级。(2)Variety:数据类型多。大数据的数据类型早已不是单一的文本形式或结构化数据库中的表,它包括订单、日志、微博、音频、视频等复杂结构的数据。(3)Velocity:数据流动快。速度是大数据区别于传统数据的重要特征。例如,对PB级大数据进行一次复杂查询,传统结构化查询语言(SQL)技术可能需要几个小时,基于大数据技术的平台正在将这个时延逐步降低到分钟级、秒级、毫秒级,甚至完全实时。(4)Value:数据潜在价值大。在研究和技术开发领域,上述三个特征已经足够表示大数据的特征。但在商业应用领域,该特征就显得非常关键。投入如此巨大的研究和技术开发,就是因为大家都洞察到了大数据潜在的巨大价值。如何通过强大的机器学习和高级分析更迅速地完成数据价值的“提纯”,挖掘出大数据的潜在价值,是目前在大数据应用背景下亟待解决的难题。数据量的大小是用计算机存储容量的单位来度量的,基本单位是字节,如下所示。(1)1Byte(B),相当于一个英文字母;(2)1KiloByte(KB)=1024B,相当于一则短篇故事的内容;(3)1MegaByte(MB)=1024KB,相当于一则短篇小说的内容;(4)1GigaByte(GB)=1024MB,相当于贝多芬第五乐章交响曲的乐谱内容;(5)1TeraByte(TB)=1024GB,相当于一家大型医院中所有X光片的内容;(6)1PetaByte(PB)=1024TB,相当于美国学术研究图书馆藏书内容的50%;(7)1ExaByte(EB)=1024PB,5EB相当于至今全世界人类所讲过的话语;(8)1ZettByte(ZB)=1024EB,相当于全世界海滩上沙子数量的总和;(9)1YottaByte(YB)=1024ZB,相当于1024个地球一样的星球上沙子数量的总和。二、大数据技术的影响和科学意义我们正处于一个信息化的时代,根据IBM前首席执行官路易斯·郭士纳的观点,IT领域每隔十五年就会迎来一次重大变革,时至今日已经发生了三次信息化革命浪潮,并且发生的间隔越来越短,如表2-1所示。1.大数据技术的影响(1)在科学研究方面,大数据使得人类的科学研究在经历了实验、理论、计算三种范式之后,迎来了第四种范式——数据。(2)在思维方式方面,大数据具有“全样而非抽样、效率而非精确、相关而非因果”等显著特征,完全颠覆了传统的思维方式。(3)在社会发展方面,大数据决策逐渐成为一种新的决策方式,大数据应用有力地促进了信息技术与各行业的深度融合,大数据开发大大地推动了新技术和新应用的不断涌现。(4)在就业市场方面,大数据的兴起使得数据分析师成为热门职业。(5)在人才培养方面,大数据的兴起将在很大程度上改变中国高校信息技术相关专业的现有教学和科研体制。2.大数据技术的科学意义大数据技术的科学意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换言之,如果把大数据比作一种产业,那么这种产业实现盈利的关键,在于提高对数据的“加工能力”,以及通过“加工”实现数据的“增值”应用。经调研,大数据在中国的发展前景非常广阔。在行业方面,2012年,大数据应用已经从电子商务/互联网、快消品等行业向金融、政府/公共事业、能源、交通等行业扩展;在应用场景方面,已经从用户上网行为分析拓展到电力安全监控系统、舆情监测等;在行业需求方面,大数据需求主要集中在金融行业中的数据模型分析、电子商务行业中的用户行为分析、政府部门中的城市监控,以及能源行业中的能源勘探等。第二节数据采集与治理一、大数据的来源与多源数据采集方式1.大数据的来源如果将Web2.0和智能手机移动设备产生数据的阶段合称为用户原创内容阶段,那么可以将这四个变化划分为三个数据产生阶段,分别是运营式系统阶段、用户原创内容阶段、感知式系统阶段,如图2-1所示图2-1数据产生的三个阶段2.多源数据采集方式多源数据采集方式有多种,主要分为以下四种。(1)离线搜集。工具:ETL(Extract-Transform-Load)。在数据仓库的语境下,ETL基本上是数据搜集的代表,包括数据的提取(Extract)、转换(Transform)和加载(Load)。在转换的过程中,需要针对具体的事务场景对数据进行治理,如不合法数据的监测与过滤、格式转换与数据规范化、数据替换、保证数据完整性等。(2)实时搜集。工具:Flume/Kafka。实时搜集首先用在考虑流处理的事务场景中,如网络监控的流量办理、金融运用的股票记账和Web服务器记录的用户访问行为等。在流处理场景中,数据搜集会成为Kafka的顾客,Kafka像水坝一样将源源不断的数据拦截,然后依据事务场景做对应的处理(如去重、去噪、中心核算等),然后写入对应的数据存储中。(3)互联网搜集。工具:Crawler、DPI、其他爬虫工具等。Scribe被称为网页蜘蛛、网络机器人,是一种按照一定的规则,自动抓取万维网信息的程序或脚本,它支持图片、音频、视频等文件或附件的搜集。(4)其他数据搜集方法。关于企业生产经营数据上的客户数据、财务数据等对保密性要求较高的数据,可以通过与数据技术服务商合作,运用特定体系接口等相关方式搜集数据。二、大数据治理与Hadoop解决方案1.大数据治理大数据治理是指充分运用大数据、云计算、人工智能等先进技术,实现治理手段的智能化。大数据,一般指符合4V特征的数据,包括社交数据、机器数据等。在政策/流程上,大数据治理应覆盖大数据的获取、处理、存储、安全等环节,需要为大数据设置数据管理专员制度;需要考虑大数据与主数据管理能力的集成,需要对大数据做定义,统一主数据标准;在数据生命周期管理各阶段,如数据存储、保留、归档、处置时,要考虑大数据保存时间与存储空间的平衡,应识别对业务有关键影响的数据元素,检查和保证数据质量。2.大数据的Hadoop解决方案(1)Hadoop的特性及其由来与发展Hadoop是一个能够对大量数据进行分布式处理的软件框架,其主要由HDFS(分布式文件系统)、MapReduce(分布式计算框架)和HBase(分布式数据库系统)等组成,如图2-2所示是Hadoop的Logo。Hadoop面向的应用环境是大量低成本计算构成的分布式运算环境,它假设计算节点和存储节点会经常发生故障,因此设计了数据副本机制,确保能够在出现故障节点的情况下重新分配任务。同时,Hadoop以并行的方式工作,通过并行处理加快处理速度,具有高效的处理能力。在设计之初,Hadoop就为支持可能面对的PB级大数据环境进行了特殊的设计,具有优秀的可扩展性。可靠、高效、可扩展这三大特性,加上Hadoop开源、免费的特性,使Hadoop技术得到了迅猛发展。(2)Hadoop生态系统Hadoop生态系统的特点:源代码开源;社区活跃,参与者众多;涉及分布式存储和计算的方方面面;已得到企业界验证。如图2-3所示是Hadoop生态系统的2.0时代,除HDFS、MapReduce和HBase外,Hadoop2.0时代的组成还增加了YARN(分布式计算框架)等。第三节数据存储与管理一、分布式文件系统分布式文件系统(DistributedFileSystem,DFS)指文件系统管理的物理存储资源不用直接连接在本地节点上,而是通过计算机网络与节点(可简单理解为一台计算机)相连;或者是若干个不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件系统。下面以HDFS(HadoopDistributedFileSystem)为例进行介绍。(1)HDFS存储实现过程一个HDFS基本集群包括两部分,分别为NameNode和DataNode,用于将管理与工作分离。NameNode是一个集群的主服务器,主要用于对HDFS中的所有文件及数据进行维护,不断读取和记录集群中DataNode的主机情况与工作状态,并且通过写入镜像日志文件的方式进行存储。DataNode主要用于在HDFS集群中执行具体任务,是整个集群的工作节点。如图2-4所示是HDFS存储实现过程图示,文件被分成若干个相同大小的数据块,分别存储于若干个DataNode中,DataNode定时向集群中的NameNode发送自己的运行状态与存储内容,并且根据NameNode发送的指令进行工作。(2)HDFS的命令行的操作对HDFS来说,fs命令用于启动命令行,该命令主要用于提供一系列子命令,一般形式为hadoopfs-cmd<args>例如,将指定路径下的文件输出到屏幕上:hadoopfs-cathdfs://host1:port1/file(3)HDFS的接口(API)使用HDFS通过命令行提供了大量操作命令,可以对HDFS中的数据进行操作。例如,基本的数据读取命令,常用的增、删、改、查命令等。此外,Hadoop提供了一整套FileSystemAPI用于对HDFS中的数据进行操作。二、关系数据库关系数据库(RelationalDataBase)是建立在关系数据库模型基础上的数据库,借助集合代数等概念和方法来处理数据库中的数据,同时也是一组具有正式描述特性的表格,该表格是装载着数据项的特殊收集体,这些表格中的数据能以多种不同的方式被存取或重新召集而不需要重新组织数据库表格。主流的关系数据库有Oracle、DB2、SQLServer、Sybase、MySQL等。下面对关系数据库的模型结构进行介绍。(1)单一的数据结构。关系数据库的表采用二维表格来存储数据,是一种按行与列排列的具有相关信息的逻辑组,它类似于Excel工作表。一个数据库可以包含多个数据表。(2)元组(记录)。表中的一行即为一个元组,或者称为一条记录。例如,表2-2第一行元组的值是:成都_A101张三1000.00。(3)属性(字段)。表中的一列称为一个字段,表是由其包含的各种字段定义的,每个字段描述了它所包含的数据的意义。创建表时需要为每个字段分配一个数据类型,定义它们的数据长度和其他属性。字段可以包含各种字符、数字,甚至图形。(4)属性值。行和列的交叉位置表示某个属性值,如“张三”就是顾客名的属性值。(5)主码。主码(也称主键或主关键字)是表中用于唯一确定一个元组的数据。主关键字用来确保表中记录的唯一性,可以是一个字段或多个字段,常用作一个表的索引字段。如账号列字段就是主关键字。(6)域。属性的取值范围。(7)关系模式。对关系的描述称为关系模式,一般表示为:关系名(属性1,属性2,…,属性n)。例如,上面的关系可以描述为:余额表(分行名、账号、顾客名、余额)。SQL(StructQueryLanguage,结构查询语言)是1974年由Boyce和Chamberlin提出的,由于它使用方便、功能丰富、语言简单易学,因此很快得到了推广和应用。SQL语法如下:(1)数据查询:选择(SELECT)、投影、连接、除、并、交、差。(2)数据操纵:创建(CREATE)、删除(DROP)。(3)数据更新:插入(INSERT)、删除(DELETE)、修改(UPDATE)。(4)数据控制:授权(GRANT)、回收(REVOKE)三、NoSQL数据库1.NoSQL数据库的改进与兴起随着近几年互联网技术的应用及发展,数据处理需要面对的数据量、数据特征及处理需求都发生了很大的变化。这些变化给之前在数据库领域占据统治地位的传统关系型数据库带来了极大挑战,主要体现在无法适应多变的数据结构、无法处理高并发的写操作、无法应对业务量的快速增长(Web2.0PB级甚至ZB级)和业务类型的快速变化等方面。在这样的大环境中,数据库领域兴起了一股新的技术流派——NoSQL。需要注意的是,NoSQL并没有摒弃传统关系型数据库及SQL,其含义是NotonlySQL,即超越传统的关系型数据库。NoSQL的主要思路是在阻碍关系型数据库适应新需求的两个主要方面进行改进。(1)放松事务一致性要求。(2)改变固定的表结构。2.NoSQL数据库的四大分类如表2-3所示是NoSQL数据库的四大分类。3.NoSQL数据库的三大基石1987年,JimGray与GianfrancoPutzolu发表了I/O的五分钟法则,简而言之,如果一条记录频繁被访问,就应该将其存储于内存中,否则应该将其存储于硬盘中,并且按需要访问,这个临界点就是五分钟。在CAP理论中,C(Consistency)表示一致性,是指任意一个读操作总是能够读取之前完成的写操作的结果;A(Availability)表示可用性,是指快速获取数据,可以在确定的时间内返回操作结果;P(ToleranceofNetworkPartition)表示分区容错性,是指当出现网络分区的情况时(系统中的一部分节点无法和其他节点进行通信),分离的系统能够正常运行。CAP理论说明,一个分布式系统不可能同时满足一致性、可用性和分区容错性这三个需求,最多只能同时满足两个。四、多模态数据管理1.多模态数据不同的存在形式或信息来源均可被称为一种模态,由两种或两种以上模态组成的数据称为多模态数据。多模态数据是指对于同一个描述对象,通过不同领域或视角获取的数据,一般把描述这些数据的每个领域或视角叫作一个模态。多模态数据管理主要是对多模态数据进行融合。2.多模态数据融合及分类法多模态数据融合负责将多个模态的信息进行有效的整合,汲取不同模态的优点,完成对信息的整合。目前,多模态数据融合主要有三种方式:前端融合(early-fusion)或数据水平融合(data-levelfusion)、后端融合(late-fusion)或决策水平融合(decision-levelfusion)、中间融合(intermediate-fusion)。前端融合将多个独立的数据集融合成一个单一的特征向量,然后输⼊到机器学习分类器中。由于多模态数据的前端融合往往无法充分利用多个模态数据间的互补性,并且前端融合的原始数据通常包含大量的冗余信息。后端融合则是将不同模态数据分别训练好的分类器输出打分(决策)进行融合。这样做的好处是,融合模型的错误来自不同的分类器,而来自不同分类器的错误往往互不相关、互不影响,不会造成错误的进一步累加。中间融合先将不同的模态数据转换成高维特征表达,再于模型的中间层进行融合。以神经网络为例,中间融合先利用神经网络将原始数据转换成高维特征表达,再获取不同模态数据在高维空间上的共性。中间融合方法的一大优势是可以灵活选择融合的位置。第四节大数据处理平台一、批处理计算1.大数据批处理计算MapReduce是最适合用于进行大数据批处理的计算模式之一,它是一个单输入、两阶段(Map和Reduce)的数据处理过程。首先,MapReduce对具有简单数据关系、易于划分的大规模数据采用“分而治之”的并行处理思想;其次,将大量重复的数据处理过程总结成Map和Reduce两个抽象操作;最后,MapReduce提供了一个统一的并行计算框架,将并行计算涉及的多个系统层交给计算框架,大大简化了程序员进行并行化程序设计的工作。在开源社区的努力下,开源的Hadoop系统目前已成为较成熟的大数据处理平台,并且发展成一个包括众多数据处理工具和环境的完整的生态系统。目前,国内外的大部分IT企业都使用Hadoop平台进行企业内大数据的计算处理。此外,Spark也具备进行批处理的能力,Spark代替的是Hadoop中的MapReduce,是一个计算框架。Spark继承了MapReduce的一些核心设计思想,并且对其进行了改进,Spark避免了MapReduce的一些缺陷,Spark不仅有Map函数和Reduce函数,还提供了更多比较灵活的数据操作类型,如filter、sort、groupby等,因此Spark编程模型更灵活,表达能力也更强。Spark有完整的架构,其中,SparkStreaming是构建在Spark基础上的流式大数据处理框架。Spark可以用Scala、Python、Java、R语言进行开发,其中首选Scala语言,因为Spark是用Scala语言开发的,所以用Scala语言开发的应用程序是最高效的应用程序。因此,将Hadoop与Spark结合是很好的大数据处理方案。2.MapReduce分布式计算(1)什么是MapReduce?MapReduce是什么,怎么理解MapReduce?下面通过一个例子进行说明。如果要统计图书馆中所有的书,那么应该怎么办?非常简单,你统计1号书架上的书,我统计2号书架上的书,人越多,统计书的速度越快,每个人统计的数是Map。然后将所有人统计的数加在一起,就是Reduce。这个例子就是MapReduce的一个基本模型,当然实际的MapReduce并非如此简单。在正式介绍MapReduce之前,除了前面介绍的一些基本概念,还需要了解一些专业术语。(2)架构与执行过程。MapReduce的任务称为Job。通常使用Job将输入的数据集切分成若干个独立的数据块,并且将其分布在不同的节点上。完整的MapReduce流程图如图2-5所示。在图2-5中,Hadoop为每个创建的Map任务分配输入文件的一部分,这部分被称为split,然后由每个分配的split运行用户自定义的Map,从而根据用户的需要处理每个split中的内容。split存储于Block中。一般情况下,一次Map任务的执行过程分成两个阶段:(1)Map读取split中的内容后,将其解析成键/值对(Key/Value),并且将Map定义的算法应用于每条内容,内容范围可以由用户自定义确定。(2)在Map中定义的算法处理完split中的内容后,Map会向TaskTracker报告,然后通知JobTracker任务执行完毕,可以接受新的任务。(3)在HBase上运行MapReduce,作为与Hadoop架构无缝集成的数据库系统,HBase可以很方便地支持以MapReduce编程模式开发的数据处理应用。HBase提供了与Hadoop包中Mapper和Reducer基础类相近的几个类,这些类将HBase的实现和使用细节进行了很好的屏蔽,方便开发者使用。这些类与Hadoop基础类的关系见表2-4。二、流计算1.无界数据及流数据可以将数据分为两种类型的数据集,一种是有界数据集,另一种是无界数据集(见图2-6)。(1)有界数据集有界数据集具有时间边界,在处理过程中数据一定会在某个时间范围内起始和结束,有可能是一分钟,也有可能是一天。对有界数据集的数据处理方式被称为批数据处理(BatchDataProcessing),也可称为批量计算,即将数据从RDBMS(关系数据库管理系统)或文件系统中读取出来,然后在分布式系统内处理,最后将处理结果写入存储介质中。(2)无界数据集对于无界数据集,数据从生成开始就一直持续不断地产生新的数据,因此数据是没有边界的,如服务器的日志、传感器信号数据等。与批数据处理对应,对无界数据集的数据处理方式被称为流式数据处理(StreamingDataProcessing),也可称为流计算。(3)统一数据处理有界数据集和无界数据集只是一个相对的概念,主要根据时间范围确定,可以认为一段时间内的无界数据集其实就是有界数据集,同时有界数据集也可以通过一些方法转换为无界数据集。如系统一年的订单交易数据,其本质应该是有界数据集,可是当把它一条一条按照产生的顺序发送到流式系统进行处理后,可以认为数据是相对无界的。对于无界数据集也可以拆分成有界数据集进行处理,如将系统产生的数据输入存储系统,按照年或月切分成不同时间长度的有界数据集,然后就可以通过批处理方式对数据进行处理。从以上分析可以得出结论:有界数据集和无界数据集其实是可以相互转换的。2.流计算的概念(1)什么是流计算流计算是指对数据流进行处理,实时获取来自不同数据源的海量数据,经过实时分析处理,获得有价值的信息的实时计算方式。流计算系统应该满足如下需求。高性能:处理大数据的基本要求,如每秒处理几十万条数据。海量式:支持TB级甚至是PB级的数据规模。实时性:保证较低的延迟时间,达到秒级别,甚至是毫秒级别。分布式:支持大数据的基本架构,必须能够平滑扩展。易用性:能够快速进行开发和部署。可靠性:能够可靠地处理流数据。(2)流计算与批量计算的区别流计算与批量计算的区别主要体现在以下几个方面。数据时效性不同:流计算实时、低延迟,批量计算非实时、高延迟。数据特征不同:流计算的数据一般是动态的、没有边界的,批量计算的数据一般是静态的、有边界的。应用场景不同:流计算主要应用于实时场景,如实时推荐、业务监控等;批量计算主要应用于对实时性要求不高、可以离线计算的场景,如数据分析、离线报表等。运行方式不同:流计算的任务是持续进行的,批量计算的任务是一次性完成的。3.流计算框架(1)流计算框架的汇总大数据计算引擎的第一代是MapReduce,第二代是基于有向无环图的Tez,第三代是基于内存计算的Spark,第四代是Flink。Storm是比较早的流计算框架,后来出现了Trident和SparkStreaming,以及实时计算框架Flink。这几种流计算框架如表2-5所示。(2)流计算框架的对比这几种流计算框架的详细对比如下。模型:Storm和Flink会逐条处理数据;Trident(Storm的封装框架)和SparkStreaming会进行小型批量计算,一次处理一批数据(小批量)。API:Storm和Trident都使用基础API进行开发,如实现一个简单的求和操作;SparkStreaming和Flink都会提供封装后的高阶函数,可以直接使用,比较方便。保证次数:在数据处理方面,Storm可以实现至少处理一次,但不能保证仅处理一次,容易导致数据重复处理的问题,所以针对计数类的需求,可能会产生一些误差;Trident可以保证对数据只进行一次处理,SparkStreaming和Flink也是如此。容错机制:Storm和Trident可以通过ACK机制实现数据的容错,而SparkStreaming和Flink可以通过CheckPoint机制实现数据的容错。状态管理:Storm没有实现状态管理,SparkStreaming实现了基于DStream的状态管理,Trident和Flink实现了基于操作的状态管理。延时:表示数据处理的延时情况,Storm和Flink接收到一条数据就处理一条数据,其数据处理的延时性很低;Trident和SparkStreaming会对数据进行小型批量计算,它们的数据处理延时性相对较高。吞吐量:Storm的吞吐量其实不低,但与其他几种流计算框架的吞吐量相比,Storm的吞吐量较低;Trident的吞吐量中等;SparkStreaming和Flink的吞吐量较高。4.开源流计算框架Flink(1)Flink简介Flink是什么。Flink是通过实现GoogleDataflow流计算模型,从而实现高吞吐量、高性能的开源流计算框架。Flink支持高度容错的状态管理,可以防止状态在计算过程中因为系统异常而丢失。Flink的具体优势。Flink支持事件时间(EventTime)概念,可以保证事件原本产生时的时序。Flink支持有状态计算。Flink支持高度灵活的窗口(Windows)操作。(2)Flink的基本架构Flink的基本架构如图2-7所示。Flink系统主要由两个组件组成,分别为JobManager和TaskManager。三、图计算1.大数据的图计算概述大数据的图计算是大数据处理中的一类典型运算,目前有两类图计算方式。一类是使用基于MapReduce计算模型的SparkGraphX图计算;另一类是在MapReduce之外参考其他并行图计算模型设计新的计算方法,其中比较成功的有Google的Pregel,其借鉴了整体同步并行计算(BulkSynchronousParallel,BSP)模型。BSP模型是2010年图灵奖得主Valiant在1990年提出来的一种基于消息通信的并行计算模型。BSP模型中定义的计算过程如图2-8所示。2.GooglePregel计算框架Pregel是Google借鉴BSP模型的思想构建的分布式图计算框架,可以视为继MapReduce之后的又一大分布式计算利器,其主要目的是支持实现对大规模图数据进行计算的各类图算法,是高效、实用的并行图处理系统。Pregel的核心思想可以简要理解为“像节点一样思考”,即算法设计和编程实现都以图的节点为核心展开。Pregel的系统架构主要包括三类节点,分别为Client、Master和Worker,如图2-9所示。第五节数据分析计算一、查询分析概述虽然Hadoop提供了MapReduce编程模式及HBase基础数据库。但要真正高效完成数便于理解的数据抽象能力;简洁易用的操作方式;高效稳定的编译执行环境。为了满足以上条件,Hadoop开源社区的开发者为用户提供了几种解决方案。(1)Hive在Hadoop中相当于传统数据分析环境中的数据仓库,主要用于存储和处理海量结构化数据。Hive将大数据存储于HDFS中,并且为数据分析师提供了一套类似于数据库的数据存储和访问机制。(2)允许数据分析师使用他们熟悉的类似于SQL的语言对数据进行操作。(3)Pig是MapReduce的一个抽象。它是一个工具,用于分析较大的数据集,并将其表示为数据流,常与Hadoop一起使用,可以使用Pig在Hadoop中执行所有的数据处理操作。Pig提供了一种可表示数据流的脚本语言PigLatin,以及支持此语言执行的环境,它简化了Hadoop常见的数据分析任务,可以方便地加载数据、表达数据和转换数据等。二、Dremel技术Google的Dremel是一个用于分析只读嵌套型数据的可扩展交互式动态查询系统,其作用是在秒级时间内完成万亿行级别的大数据聚合查询。完成如此高难度的任务,Dremel主要依靠两个核心机制:多层执行树和列状数据结构。第六节数据可视化一、数据可视化的主要技术数据可视化是指将数据以图形或图像的形式表示,并利用数据分析和开发工具,发现其中未知信息的处理过程。可视化技术分为两类,一类是可视化报表,另一类是可视化分析。可视化报表用图表描述业务绩效,通常使用度量和时间系列信息定义。常见的统计图表如表2-6所示。二、数据可视化案例R软件是开源的统计绘图软件,通过将R和Hadoop进行深度集成可以使Hadoop获得强大的深度分析能力。R语言是一种脚本语言,有大量的程序包可以用。R语言中的向量、列表、数组、函数等都是对象,可以方便地查询和引用,并且可以进行条件筛选。R语言具有精确的绘图功能,生成的图可以以多种格式存储。在使用R语言编写函数时,无须声明变量类型,通过循环语句、条件语句可以控制程序的流程。下面介绍如何使用R语言绘制基本图形,如直方图等。可以直接使用help(funciton)查找R语言标准画图代码,实例数据基本都来自内置包的数据。绘制直方图的标准代码如下:hist(x,...)三、可视化工具和软件主要的可视化工具和软件如下。1.入门级工具Excel的图形化功能并不强大,但作为一个入门级工具,Excel是快速分析数据的理想工具,也能创建供内部使用的数据。2.信息图表工具(1)GoogleChartAPI工具集主要用于提供动态图表工具,功能丰富,能够在所有支持SVG\Canvas和VML的浏览器中使用。(2)ECharts是一个纯JavaScript的图表库,可以流畅地运行在PC和移动设备上。(3)D3(Data-DrivenDocmuments),又称数据驱动文档,是一个Java库,主要用于创建数据可视化图形。作为一款网页前端数据可视化工具,其将数据在网页端映射出来,并表现为我们需要的图形,大部分情况下D3都能满足我们的需求。(4)Visual.ly是绘制信息图的首选工具,它提供了大量的信息图模板。3.地图工具(1)Google发布的MapsAPI让所有的开发者都能在自己的网站中植入地图功能。(2)ModestMaps提供了一套查看卫星地图的API。(3)Leaflet是为移动设备建设互动地图而开发的现代的、开源的JavaScript库。(4)GoogleFusionTables(数据融合表)。4.可视化设计工具Processing是专业的可视化设计工具,可以在大部分的平台上运行,用于产生图像、动画和进行交互。5.专家级可视化分析工具(1)R语言和Python语言等是开源大数据平台上的理想的分析和可视化工具。(2)Weka是根据特征做分类分析和聚类分析的数据挖掘软件工具。(3)Gephi是社交图谱数据可视化分析的工具。第七节数据安全与隐私保护一、数据安全与传统信息安全的关系与传统的数据相比,大数据本身的特性给其带来了更高的风险,如大数据更容易成为黑客攻击的首选目标、涉及国家安全、大数据加大隐私泄露风险等。对于大数据的安全,如果单纯从这些特性本身来看,只是对现有数据安全手段的可扩展性提出了更高的要求,并没有改变对现有数据安全功能的要求。但现实并非如此,原因是大数据存在的目的与传统数据有巨大的差别,这就是数据的共享,而共享的背后则是数据角色发生的巨大变化——从IT领域中的一个信息元素上升为与土地、劳动力、资本和技术同等重要的国民经济核心生产要素。2020年3月30日中共中央、国务院明确将数据作为新型生产要素写入政策文件。培育发展数据要素市场,释放数据红利,已成为推动经济高质量发展的新动能。数据作为数字化时代的一种核心生产要素,只有在广泛的使用中才能最大限度地发挥数据资产的价值,而最大程度的资源利用就是从独享走向共享。二、数据安全及隐私保护支撑技术1.数据安全为流动的大数据保驾护航的手段包括数据监控、数据溯源、违规告警、全息网御。(1)数据监控。数据监控即流动数据的可视化,实时捕获、监测并能够展示网络中各种流动的数据,尤其是敏感数据及其使用者、与之相关的应用、所涉及的设备、来自哪里、去往哪里等。(2)数据溯源。可回溯和审计任意时间段内的数据行为,可对任何流动数据的当前状况和历史状况进行追溯,还原数据流转路径及流转范围,提供完整的数据轨迹和证据链。(3)违规告警。遵守国家关于大数据和信息安全的法律,通过自定义各种场景,实时监测、发现和告警各种数据违规。从用户、应用、业务敏感性、设备、IP地址、时间、地点等角度灵活应用各种策略,精确发现数据脱敏、用户违规访问、账号违规共享、数据违规流转等行为。(4)全息网御。全息网御是行为数据驱动信息安全的领航者,通过其特有的专利技术系统性融合了NG-DLP、UEBA、NG-SIEM、CASB四项先进技术,结合机器学习,发现并实时重构网络中不可见的“用户—设备—数据”互动关系,提供以数据为核心的数据安全风险感知平台,为企业的信息安全管理提供无感知、无死角的智能追溯服务,使企业能够高效精准地审计过去、监控现在、防患未来,极大提高了IT安全运维、安全人员响应事故、抓取证据链和恢复IT系统的效率。2.隐私保护支撑技术以下是六种主要的用于数据安全与隐私保护的关键技术。(1)数据发布匿名技术。使攻击者无法追溯消息发布者的个人信息。(2)社交网络匿名保护技术。即在数据发布时隐藏用户的标识、属性信息及与其他用户之间的关系。(3)数据水印技术。指将标识信息以难以察觉的方式嵌入数据载体内部且不影响其使用的方法,多用于多媒体数据的版权保护。(4)数据溯源技术。由于数据来源的多样化,有必要记录数据的来源及其传播过程和计算过程,为后期的挖掘与决策提供辅助支持。(5)角色挖掘。即基于角色的访问控制。通过为用户指派角色、将角色关联至权限集合,实现用户授权、简化权限管理。(6)风险自适应的访问控制。第八节社会网络大数据一、社会网络大数据面临的挑战社会网络(SocialNetwork)是以人或人的群体为结点构成的集合,这些结点之间具有某种接触或相互作用模式,如朋友关系、亲属关系、同事关系或科研合作关系等。社会网络是以人物为节点,以人际关系为边,将人物节点连接起来构成的网络,具有平均路径长度短、聚集系数高等特点。社会网络大数据不仅为社会治理领域带来了新的契机,也对数据处理技术提出了巨大的挑战。于是人们构建了诸如社会焦点透视镜这类系统,结合新浪微博数据,不仅能够实时提供每日的焦点事件供舆情分析部门进行检测,还能够深层剖析焦点事件的情感分布原因和人群分布,协助社会治理领域提出应对引导策略或改进工作的措施。二、社会网络中的用户影响力用户影响力是用户能够直接或间接作用于其他用户的能力,在社会网络中各
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024项目管理项目管理流程试题及答案
- 2025年考试新政策分析证券从业试题及答案
- 项目管理认证考试主题结构试题及答案
- 项目管理的风险控制试题及答案
- 场地居间协议书(2篇)
- 呼吸衰竭患者的急救及护理
- 河南省信阳市罗山县2024-2025学年高二下学期4月期中英语试题(原卷版+解析版)
- 从零到一理解区块链技术及其在各领域中的法律应用
- 企业健康管理的大数据解决方案探讨
- 从数据分析到智能决策医疗健康的未来之路
- 2024至2030年中国桌上游戏(桌游)行业市场调查研究及投资潜力预测报告
- 尾矿库基本知识
- 财会实操-体育馆的账务处理分录
- 双汇冷链物流-2
- 2024年安徽中考历史试卷试题答案解析及备考指导课件
- 2024急救培训心肺复苏课件
- 人文关怀护理课件
- 2024山东能源集团中级人才库选拔高频考题难、易错点模拟试题(共500题)附带答案详解
- 2024届合肥市高三第三次教学质量检测 英语答案
- 中考复习尺规作图的路径与原理
- 手术器械检查与保养
评论
0/150
提交评论