云计算与大数据技术应用 第一章


什么是云计算

云计算的定义

PC时代以前,计算机用户主要通过终端分享主机(可以理解为服务器)的计算和存储,获得有限的服务。这样的模式就好比一个家庭里有许多孩子,每一笔零花钱都要朝父母要,用多少要多少。家里的钱都锁在保险柜里,可以想象对孩子来说想买些小零食小玩具都是比较不自在的体验。1979年IBM推出了IBM-PC,计算机从企业普及到个人,用户可以拥有自己的个人电脑。如果还拿零花钱举例,这个时代就好比让孩子有了自己的小钱包,虽然远不如保险柜里的钱多,但完全由自己掌控,一定程度上摆脱了父母的约束。问题也随之而来,一如钱包可能丢失,个人电脑的数据也会因为电脑病毒而付之一炬。而且一台电脑的文件可能在另一台电脑无法使用,就像没法在美国花人民币一样。再后来,也就进入了云计算最早的阶段。大型数据中心的出现给了IBM机会,IBM开始专门出售用于云计算的服务器。而亚马逊此时则开始购买IBM的服务器建立数据中心,提供网站托管服务。想要提供互联网服务的公司不用自己费心,只要租用亚马逊的服务即可。我们可以认为亚马逊开设了自己的银行,从IBM大量购买“保险柜”,然后将管理存款、计账、提供交易明细的服务卖给客户。自此钱便不需要放在自家保险柜,可以直接交给亚马逊,用户没有了保险柜的概念,只知道自己有一个账户,里面是自己的存款。而作为互联网巨头的谷歌,解决了云计算的关键技术问题,其中包括海量数据存储、计算资源管理和信息安全三方面。我们可以认为,谷歌直接搭建了整个银行系统,设置了央行和各个商业银行的分行,组织了专门的银行柜员,让客户的钱可以在全国银行实现统一调度,不用去管自己的钱到底是放在哪家银行的哪个分行、哪个保险柜。同时谷歌还设置了安保系统,防止有人抢银行。至此账户和保险柜完全分离,用户只要享受存取款的服务即可。

云计算的特点

第一,云计算保证用户可以随时随地访问和处理信息,并且可以方便地与人共享信息”:在过去分享文件只能通过U盘拷贝,而且到了别人的电脑上还未必可以打开。想要处理信息的话,用户一定要电脑在手边,现在在任何终端都可以完成,而且在线应用软件分享数据功能比个人电脑强得多。这就好比支付宝的存在让我们从此免去了去银行取钱的过程,想要借钱给别人只需要在线转账即可。而且即使在海外消费,也可以直接按实时汇率把美元折合成人民币扣费。“第二,云计算保证用户可以使用大量在云端的计算资源,而无需自己购入设备,压低了用户成本,且用户不用担心数据丢失、病毒入侵等麻烦”:这一点不难理解,如果还要类比的话,我们把钱存在银行就免去了过去自己选购保险柜的过程和费用,而且把钱放在银行也方便保管,不必承担失窃的风险,反倒是那些藏在自家土炕里的钱全部发霉腐坏了。“第三,云计算让全社会的计算资源得到最有效的利用”:我们可以想象,银行的保险柜利用率肯定要远比家庭的高,同样一大笔财宝,放在银行要比分放在零散的家庭占用的保险柜数量少得多。同时银行还可以灵活周转,若是现在每个家庭都把钱从银行取出来放回自己家里,那世界经济得倒退百年都不止。云计算的出现就好比加速了这百余年的经济发展,让互联网服务进一步迎来一个井喷的时代。“第四,云计算可以让用户完成以前根本完成不了的任务”:现在,云计算工具可以把工作并行地安排到互联网上闲置的服务器中,几分钟之内完成任务。还是同样的例子,身家上亿的富翁要是把钱都放在自己家里自己数,每消费一笔巨款也要再数一笔钱出来,那可能真要数钱数到死了,而现在银行负责了一切,用户只需要在线查看自己账户的余额和交易明细就可以了。“第五,云计算把整个云端的服务器资源作为整体保存,然后根据用户的需求动态分派这些资源”:现在公司购买计算资源,只需要指定需要的资源数目,而无需考虑设备问题。就好比银行的储户不必去管自己的钱到底是放在银行的哪个分行、哪个保险柜,消费时直接刷卡消费,不用考虑整存争取,买买买就是了。简单讲云计算的几大优点就是,省心、省心和省心,解放了所有基于互联网的业务。

经典的云计算基础架构

云计算架构——显示层  这层主要是用于以友好的方式展现用户所需的内容,并会利用到下面中间件层提供的多种服务,主要有五种技术:  HTML:标准的Web页面技术,现在主要以HTML4为主,但是将要推出的HTML5会在很多方面推动Web页面的发展,比如视频和本地存储等方面。  JavaScript:一种用于Web页面的动态语言,通过JavaScript,能够极大地丰富Web页面的功能。  CSS:主要用于控制Web页面的外观,而且能使页面的内容与其表现形式之间进行优雅地分离。  Flash:业界最常用的RIA(Rich Internet Applications)技术,能够在现阶段提供HTML等技术所无法提供的基于Web的富应用,而且在用户体验方面,非常不错。  Silverlight:来自业界巨擎微软的RIA技术,虽然其现在市场占有率稍逊于Flash,但由于其可以使用C#来进行编程,所以对开发者非常友好。  云计算架构——中间层  这层是承上启下的,它在下面的基础设施层所提供资源的基础上提供了多种服务,比如缓存服务和REST服务等,而且这些服务即可用于支撑显示层,也可以直接让用户调用,并主要有五种技术:  REST:通过REST技术,能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。  多租户:就是能让一个单独的应用实例可以为多个组织服务,而且保持良好的隔离性和安全性,并且通过这种技术,能有效地降低应用的购置和维护成本。  并行处理:为了处理海量的数据,需要利用庞大的X86集群进行规模巨大的并行处理,Google的MapReduce是这方面的代表之作。  应用服务器:在原有的应用服务器的基础上为云计算做了一定程度的优化,比如用于Google App Engine的Jetty应用服务器。  分布式缓存:通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached。  云计算架构——基础设施层  这层作用是为给上面的中间件层或者用户准备其所需的计算和存储等资源,主要有四种技术:  虚拟化:也可以理解它为基础设施层的“多租户”,因为通过虚拟化技术,能够在一个物理服务器上生成多个虚拟 机,并且能在这些虚拟机之间能实现全面的隔离,这样不仅能减低服务器的购置成本,而且还能同时降低服务器的运维成本,成熟的X86虚拟化技术有 VMware的ESX和开源的Xen。  分布式存储:为了承载海量的数据,同时也要保证这些数据的可管理性,所以需要一整套分布式的存储系统。  关系型数据库:基本是在原有的关系型数据库的基础上做了扩展和管理等方面的优化,使其在云中更适应。  NoSQL:为了满足一些关系数据库所无法满足的目标,比如支撑海量的数据等,一些公司特地设计一批不是基于关系模型的数据库。云计算架构——管理层  这层是为横向的三层服务的,并给这三层提供多种管理和维护等方面的技术,主要有下面这六个方面:  帐号管理:通过良好的帐号管理技术,能够在安全的条件下方便用户地登录,并方便管理员对帐号的管理。  SLA监控:对各个层次运行的虚拟机,服务和应用等进行性能方面的监控,以使它们都能在满足预先设定的SLA(Service Level Agreement)的情况下运行。  计费管理:也就是对每个用户所消耗的资源等进行统计,来准确地向用户索取费用。  安全管理:对数据,应用和帐号等IT资源采取全面地保护,使其免受犯罪分子和恶意程序的侵害。  负载均衡:通过将流量分发给一个应用或者服务的多个实例来应对突发情况。  运维管理:主要是使运维操作尽可能地专业和自动化,从而降低云计算中心的运维成本。 云计算架构其中有三层是横向的,分别是显示层、中间件层和基础设施层,通过这三层技术能够提供非常丰富的

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值