云计算和大数据是相辅相成关系,从应用角度来讲,大数据离不开云计算,因为大规模的数据运算需要很多计算资源;大数据是云计算的应用案例之一,云计算是大数据的实现工具之一。大数据说的是一种移动互联网和物联网背景下的应用场景,各种应用产生的巨量数据,需要处理和分析,挖掘有价值的信息;云计算说的是一种技术解决方案,就是利用这种技术可以解决计算、存储、数据库等一系列IT基础设施的按需构建的需求。两者并不是同一个层面的东西。

大数据

        大数据技术是一种新一代技术和构架,以快速的采集、处理和分析技术,从各种超大规模的数据中提取价值。大数据涉及到数据的采集、整理、存储、安全、分析、呈现和应用,大数据技术庞大复杂,基础的技术包含数据的采集、数据预处理、分布式存储、NoSQL数据库、数据仓库、机器学习、并行计算、可视化等各种技术范畴和不同的技术层面。

        从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。它的特色在于对海量数据进行分布式数据挖掘。但它必须依托云计算的分布式处理、分布式数据库和云存储、虚拟化技术。

        大数据(Big data)通常用来形容大量非结构化数据和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十、数百或甚至数千的电脑分配工作。大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。

云计算       

         近来在伦敦举行的全球领导峰会上的一项调查发现,34%的企业管理人员希望其公司的全职员工中有一半以上在远程工作,并呈上升的趋势。受新冠疫情的影响,这也是未来某些的企业发展方向。随着员工在不同的时区工作,企业将变得更加全球化,人们将看到企业领导者认识到分布式团队的好处,但是这需要云端员工及所有关键利益相关者的充分参与,并完成业务战略和目标的一致性。随着成本的节省、具备更大的灵活性,以及对房地产的绝佳利用,许多企业将把云计算作为一种提高生产力的手段。

什么“云”?

        很多年前,我们家住一小平房,喝水就喝院子里的井水,冬天取暖自己烧煤炉。后来经济状况好了,搬进了楼房,喝水喝上了集中供应的自来水,冬季用上了集中供应的暖气,再也不用打水和掏黑煤球。

        这就是“云”的基本概念,过去企业数据维护需要恒温恒湿的机房、一排排服务器以及专业的维护人员。现在云服务器成为了公司“隐形的机房”,由云服务器的提供者负责维护事宜。简单来说,配备了阿里云,就是阿里云的技术团队在维护服务器的安全

云计算模式

  • 公有云

公有云通常指第三方提供商提供给用户能够使用的云,公有云一般可通过 Internet 使用,可能是免费或成本低廉的。这种云有许多实例,可在当今整个开放的公有网络中提供服务。公有云的最大意义是能够以低廉的价格,提供有吸引力的服务给最终用户,创造新的业务价值,公有云作为一个支撑平台,还能够整合上游的服务(如增值业务,广告)提供者和下游最终用户,打造新的价值链和生态系统。它使客使⽤户能够访问和共享基本的计算机基础设备资源,包括但不限于硬件、存储和带宽等。

  • 私有云

私有云(Private Clouds)是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。该公司拥有基础设施,并可以控制在此基础设施上部署应用程序的方式。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所。私有云极大的保障了安全问题,目前有些企业已经开始构建自己的私有云。

  • 混合云

混合云是公有云和私有云两种服务方式的结合。由于安全和控制原因,并非所有的企业信息都能放置在公有云上,这样大部分已经应用云计算的企业将会使用混合云模式。很多将选择同时使用公有云和私有云,有一些也会同时建立公众云。因为公有云只会向用户使用的资源收费,所以集中云将会变成处理需求高峰的一个非常便宜的方式。比如对一些零售商来说,他们的操作需求会随着假日的到来而剧增,或者是有些业务会有季节性的上扬。同时混合云也为其他目的的弹性需求提供了一个很好的基础,比如,灾难恢复。这意味着私有云把公有云作为灾难转移的平台,并在需要的时候去使用它。这是一个极具成本效应的理念。另一个好的理念是,使用公有云作为一个选择性的平台,同时选择其他的公有云作为灾难转移平台。

如何理解IaaS、PaaS、SaaS?

        云计算是一种创新的技术,底层离不开虚拟化,平台操作系统,数据库,存储技术,负载均衡,高可用,群集技术,分布式技术,安全技术等等,想要学习云计算,就要精通其中的一门技术。云计算技术从技术应用服务的场景可划分为三个层次IaaS(基础架构即服务)、PaaS(平台即服务)、SaaS(软件即服务)。

        我们把企业信息服务比做盖房子,laaS是根据建造的需要,向大家提供各种各样的砖头。接下来我们发现,一块砖一块砖的盖房子,效率太低了,这时候我们发明了预制件,在工厂里面,把墙面,楼板,立柱等等都预制好,到了现场直接组装,就可以完成建造,而这个提供预制件的服务就是PaaS,PaaS是资源提供方和最终使用方直接的过渡。SaaS做得更干脆,直接为我们提供一个完整的房子。SaaS为我们提供的房子,有可能是毛坯也有可能是精装,更有可能是能够根据我们的需要,自助变换户型、自助选择各种各样的装饰模块来装潢的产品。

  • IaaS在公共云中

Infrastructure as a Service,虚拟化的计算资源,网络资源,存储资源。提供给消费者的服务是对所有计算基础设施的利⽤,包括处理器(CPU)、内存、存储、⽹络和其它基本的计算资源,⽤户能够部署和运⾏任意软件,包括操作系统和应⽤程序。典型应用:Amazon EC2 (Amazon Elastic Compute Cloud)

  • 私有云中的PaaS

Platform as a Service,面向的不是普通用户,而多是软件开发人员。提供给消费者的服务是把客户采用提供的开发语言和工具(例如Java,python, .Net等)开发的应用程序部署到供应商的云计算基础设施上去。 客户不需要管理或控制底层的云基础设施,包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可控制运行应用程序的托管环境配置。优点是底层到运行环境,都不需要用户操心,省事,可以集中精力做应用项目,缺点是服务商提供的东西,定制太强,不灵活,只适用于特殊的应用项目。典型软件:Docker,Rocket,Openshift。

  • 混合云中的SaaS

Software as a Service,提供给客户的服务是运营商运⾏在云计算基础设施上的应用程序, 用户可以在各种设备上通过客户端界⾯访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等。优点是所有东西都由服务商提供,自己只需要花钱使用就行了,对于广大(大中小)企业来说,SaaS是采用先进技术实施信息化的最好途径。典型应用:企业邮箱,视频点播,视频直播。

云计算核心技术

1、虚拟化技术。

        必须强调的是,虚拟化突破了时间、空间的界限,是云计算最为显著的特点,虚拟化技术包括应用虚拟和资源虚拟两种。众所周知,物理平台与应用部署的环境在空间上是没有任何联系的,正是通过虚拟平台对相应终端操作完成数据备份、迁移和扩展等。

        虚拟化是云计算最重要的核心技术之一,它为云计算服务提供基础架构层面的支撑,是ICT信息与通信技术(全写为Information and Communications Technology)服务快速走向云计算的最主要驱动力。可以说,没有虚拟化技术也就没有云计算服务的落地与成功。随着云计算应用的持续升温,业内对虚拟化技术的重视也提到了一个新的高度。与此同时,我们的调查发现,很多人对云计算和虚拟化的认识都存在误区,认为云计算就是虚拟化。事实上并非如此,虚拟化是云计算的重要组成部分但不是全部。

  从技术上讲,虚拟化是一种在软件中仿真计算机硬件,以虚拟资源为用户提供服务的计算形式。旨在合理调配计算机资源,使其更高效地提供服务。它把应用系统各硬件间的物理划分打破,从而实现架构的动态化,实现物理资源的集中管理和使用。虚拟化的最大好处是增强系统的弹性和灵活性,降低成本、改进服务、提高资源利用效率。

  从表现形式上看,虚拟化又分两种应用模式。一是将一台性能强大的服务器虚拟成多个独立的小服务器,服务不同的用户。二是将多个服务器虚拟成一个强大的服务器,完成特定的功能。这两种模式的核心都是统一管理,动态分配资源,提高资源利用率。在云计算中,这两种模式都有比较多的应用.

2、分布式数据存储技术

  云计算的另一大优势就是能够快速、高效地处理海量数据。在数据爆炸的今天,这一点至关重要。为了保证数据的高可靠性,云计算通常会采用分布式存储技术将数据存储在不同的物理设备中。这种模式不仅摆脱了硬件设备的限制,同时扩展性更好,能够快速响应用户需求的变化。

  分布式存储与传统的网络存储并不完全一样,传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。

  在当前的云计算领域,Google的GFS和Hadoop开发的开源系统HDFS是比较流行的两种云计算分布式存储系统。

  GFS(Google File System)技术:谷歌的非开源的GFS(GoogleFile System)云计算平台满足大量用户的需求,并行地为大量用户提供服务。使得云计算的数据存储技术具有了高吞吐率和高传输率的特点。

  HDFS(Hadoop Distributed File System)技术:大部分ICT厂商,包括Yahoo、Intel的“云”计划采用的都是HDFS的数据存储技术。未来的发展将集中在超大规模的数据存储、数据加密和安全性保证、以及继续提高I/O速率等方面。

3、编程模式

  从本质上讲,云计算是一个多用户、多任务、支持并发处理的系统。高效、简捷、快速是其核心理念,它旨在通过网络把强大的服务器计算资源方便地分发到终端用户手中,同时保证低成本和良好的用户体验。在这个过程中,编程模式的选择至关重要。云计算项目中分布式并行编程模式将被广泛采用。

  分布式并行编程模式创立的初衷是更高效地利用软、硬件资源,让用户更快速、更简单地使用应用或服务。在分布式并行编程模式中,后台复杂的任务处理和资源调度对于用户来说是透明的,这样用户体验能够大大提升。MapReduce是当前云计算主流并行编程模式之一。MapReduce模式将任务自动分成多个子任务,通过Map和Reduce两步实现任务在大规模计算节点中的高度与分配。

  MapReduce是Google开发的java、Python、C++编程模型,主要用于大规模数据集(大于1TB)的并行运算。MapReduce模式的思想是将要执行的问题分解成Map(映射)和Reduce(化简)的方式,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇整输出。

4、大规模数据管理

  处理海量数据是云计算的一大优势。那么如何处理则涉及到很多层面的东西,因此高效的数据处理技术也是云计算不可或缺的核心技术之一。对于云计算来说,数据管理面临巨大的挑战。云计算不仅要保证数据的存储和访问,还要能够对海量数据进行特定的检索和分析。由于云计算需要对海量的分布式数据进行处理、分析,因此,数据管理技术必需能够高效的管理大量的数据。

  Google的BT(BigTable)数据管理技术和Hadoop团队开发的开源数据管理模块HBase是业界比较典型的大规模数据管理技术。

  BT(BigTable)数据管理技术:BigTable是非关系的数据库,是一个分布式的、持久化存储的多维度排序Map。BigTable建立在 GFS,Scheduler, Lock Service和MapReduce之上,与传统的关系数据库不同,它把所有数据都作为对象来处理,形成一个巨大的表格,用来分布存储大规模结构化数据。 Bigtable的设计目的是可靠的处理PB级别的数据,并且能够部署到上千台机器上。

  开源数据管理模块HBase:HBase是Apache的Hadoop项目的子项目,定位于分布式、面向列的开源数据库。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。作为高可靠性分布式存储系统,HBase在性能和可伸缩方面都有比较好的表现。利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。

5、分布式资源管理

  云计算采用了分布式存储技术存储数据,那么自然要引入分布式资源管理技术。在多节点的并发执行环境中,各个节点的状态需要同步,并且在单个节点出现故障时,系统需要有效的机制保证其它节点不受影响。而分布式资源管理系统恰是这样的技术,它是保证系统状态的关键。

  另外,云计算系统所处理的资源往往非常庞大,少则几百台服务器,多则上万台,同时可能跨跃多个地域。且云平台中运行的应用也是数以千计,如何有效地管理这批资源,保证它们正常提供服务,需要强大的技术支撑。因此,分布式资源管理技术的重要性可想而知。

  全球各大云计算方案/服务提供商们都在积极开展相关技术的研发工作。其中Google内部使用的Borg技术很受业内称道。另外,微软、IBM、Oracle/Sun等云计算巨头都有相应解决方案提出。

6、信息安全

  调查数据表明,安全已经成为阻碍云计算发展的最主要原因之一。数据显示,32%已经使用云计算的组织和45%尚未使用云计算的组织的ICT管理将云安全作为进一步部署云的最大障碍。因此,要想保证云计算能够长期稳定、快速发展,安全是首要需要解决的问题。

  事实上,云计算安全也不是新问题,传统互联网存在同样的问题。只是云计算出现以后,安全问题变得更加突出。在云计算体系中,安全涉及到很多层面,包括网络安全、服务器安全、软件安全、系统安全等等。因此,有分析师认为,云安全产业的发展,将把传统安全技术提到一个新的阶段。现在,不管是软件安全厂商还是硬件安全厂商都在积极研发云计算安全产品和方案。包括传统杀毒软件厂商、软硬防火墙厂商、IDS/IPS厂商在内的各个层面的安全供应商都已加入到云安全领域。相信在不久的将来,云安全问题将得到很好的解决.

7、云计算平台管理

  云计算资源规模庞大,服务器数量众多并分布在不同的地点,同时运行着数百种应用,如何有效地管理这些服务器,保证整个系统提供不间断的服务是巨大的挑战。云计算系统的平台管理技术,需要具有高效调配大量服务器资源,使其更好协同工作的能力。其中,方便地部署和开通新业务、快速发现并且恢复系统故障、通过自动化、智能化手段实现大规模系统可靠的运营是云计算平台管理技术的关键。

  对于提供者而言,云计算可以有三种部署模式,即公共云、私有云和混合云。三种模式对平台管理的要求大不相同。对于用户而言,由于企业对于ICT资源共享的控制、对系统效率的要求以及ICT成本投入预算不尽相同,企业所需要的云计算系统规模及可管理性能也大不相同。因此,云计算平台管理方案要更多地考虑到定制化需求,能够满足不同场景的应用需求。

  包括Google、IBM、微软、Oracle/Sun等在内的许多厂商都有云计算平台管理方案推出。这些方案能够帮助企业实现基础架构整合、实现企业硬件资源和软件资源的统一管理、统一分配、统一部署、统一监控和统一备份,打破应用对资源的独占,让企业云计算平台价值得以充分发挥。

云计算技术特点

1、动态可扩展。

云计算具有高效的运算能力,在原有服务器基础上增加云计算功能能够使计算速度迅速提高,最终实现动态扩展虚拟化的层次达到对应用进行扩展的目的。

2、按需部署。

计算机包含了许多应用、程序软件等,不同的应用对应的数据资源库不同,所以用户运行不同的应用需要较强的计算能力对资源进行部署,而云计算平台能够根据用户的需求快速配备计算能力及资源。

3、灵活性高。

目前市场上大多数IT资源、软、硬件都支持虚拟化,比如存储网络、操作系统和开发软、硬件等。虚拟化要素统一放在云系统资源虚拟池当中进行管理,可见云计算的兼容性非常强,不仅可以兼容低配置机器、不同厂商的硬件产品,还能够外设获得更高性能计算

Logo

华为云1024程序员节送福利,参与活动赢单人4000元礼包,更有热门技术干货免费学习