大数据与云计算

目录

    • 一、大数据时代
    • 二、云计算——大数据的计算
    • 三、云计算发展现状
    • 四、云计算实现机制
    • 五、云计算压倒性的成本优势

        

      一、大数据时代

        我们先来看看百度关于 “大数据”(Big Data)的搜索指数。

        可以看出,“大数据” 这个词是从2012年才引起关注的,之后搜索量便迅猛增长。为什么大数据这么受关注?如下图,2004年,全球数据总量是30EB1。随后,2005年达到了50EB,2006年达到了161EB。到2015年,居然达到了惊人的7900EB。到2020年,将达到35000EB。

      为什么全球数据量增长如此之快?

      (一):数据产生方式的改变

      (二):人类的活动越来越依赖数据

      1. 人类的日常生活已经与数据密不可分
      2. 科学研究进入了 “数据科学” 时代
      3. 各行各业也越来越依赖大数据手段来开展工作

      何谓大数据?

      定义: 海量数据或巨量数据,其规模巨大到无法通过目前主流的计算机系统在合理时间内获取、存储、管理、处理并提炼以帮助使用者决策。

      大数据的4V+1C特征:

      二、云计算——大数据的计算

      大数据与云计算的关系:

        在中国大数据专家委员会成立大会上,委员会主任怀进鹏院士用一个公式描述了大数据与云计算的关系:G=f(x)。x是大数据,f是云计算,G是我们的目标。也就是说,云计算是处理大数据的手段,大数据与云计算是一杖硬币的正反面。大数据是需求,云计算是手段。没有大数据,就不需要云计算。没有云计算,就无法处理大数据。

        事实上,云计算(Cloud Computing)比大数据 “成名” 要早。2006年8月9日,谷歌首席执行官埃里克·施密特在搜索引擎大会上首次提出了云计算的概念,并说谷歌自1998年创办以来,就一直采用这种新型的计算方式。

      云计算长定义: 云计算是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。

      云计算短定义: 云计算是通过网络按需提供可动态伸缩的廉价计算服务。

      云计算的7个特点:

      云计算按服务类型大致分为三类:

        IaaS 将硬件设备等基础资源封装成服务供用户使用,如亚马逊云计算 AWS(Amazon Web Services)的弹性计算云 EC2 和简单存储服务 S3 。在 IaaS 环境中,用户相当于在使用裸机和磁盘,既可以让它运行 Windows ,也可以让它运行 Linux ,因而几乎可以做任何想做的事情,但用户必须考虑如何才能让多台机器协同工作。AWS 提供了在节点之间互通消息的接口简单队列服务 SOS(Simple Oueue Service)。IaaS 最大的优势在于它允许用户动态申请或释放节点,按使用量计费。运行 IaaS 的服务器规模达到几十万台之多,用户因而可以认为能够申请的资源几乎是无限的。同时,laaS 是由公众共享的,因而具有更高的资源使用效率。

        SaaS 对资源的抽象层次更进一步,它提供用户应用程序的运行环境,典型的如 Google App Engine 。微软的云计算操作系统 Microsoft Windows Azure 也可大致归入这一类。SaaS 自身负责资源的动态扩展和容错管理,用户应用程序不必过多考虑节点间的配合问题。但与此同时,用户的自主权降低,必须使用特定的编程环境并遵照特定的编程模型。这有点像在高性能集群计算机里进行 MPI 编程,只适用于解决某些特定的计算问题。例如,Google App Engine 只允许使用 Python 和 Java 语言、基于称为 Django 的 Web 应用框架、调用 Google App Engine SDK 来开发在线应用服务。

        PaaS 的针对性更强,它将某些特定应用软件功能封装成服务,如 Salesforce 公司提供的在线客户关系管理 CRM(Client Relationship Management)服务。PaaS 既不像 SaaS 一样提供计算或存储资源类型的服务,也不像 IaaS 一样提供运行用户自定义应用程序的环境,它只提供某些专门用途的服务供应用调用。

        需要指出的是,随着云计算的深化发展,不同云计算解决方案之间相互渗透融合,同一种产品往往横跨两种以上类型。例如,Amazon Web Services 是以 IaaS 发展的,但新提供的弹性 MapReduce 服务模仿了 Google 的 MapReduce ,简单数据库服务 SimpleDB 模仿了 Google Bigtable ,这两者属于 PaaS 的范畴,而它新提供的电子商务服务 FPS 和 DevPay 以及网站访问统计服务 Alexa Web 服务,则属于 SaaS 的范畴。

      三、云计算发展现状

      国外云计算的先行者:

      • 率先在全球提供了弹性计算云 EC2(Elastic Computing Cloud)和简单存储服务 S3(Simple Storage Service),为企业提供计算和存储服务。
      • 收费的服务项目包括存储空间、带宽、CPU 资源以及月租费。
      • AWS 服务的种类非常齐全。
      • 全球用户数量已经超过100万。
        • 最大的云计算技术的使用者
        • 谷歌搜索引擎就建立在分布在200多个站点、超过100万台的服务器的支撑之上,而且这些设施的数量正在迅猛增长
        • 采用 Google Docs 之类的应用,用户数据会保存在互联网上的某个位置,可以通过任何一个与互联网相连的终端十分便利地访问和共享这些数据
        • 谷歌已经允许第三方在谷歌的云计算中通过 Google App Engine 运行大型并行应用程序
        • 发表学术论文的形式公开其云计算三大法宝:GFS、MapReduce和Bigtable,并在美国、中国等高校开设如何进行云计算编程的课程
          • 微软于2008年10月推出了 Windows Azure 操作系统。Azure(译为“蓝天”)是继 Windows 取代 DOS 之后,微软的又一次颠覆性转型。
          • 微软的云平台包括几十万台服务器。
          • Azure 的底层是微软全球基础服务系统,由遍布全球的第四代数据中心构成。
          • 微软将为 Windows Azure 用户推出许多新的功能,不但能更简单地将现有的应用程序转移到云中,而且可以加强云托管应用程序的可用服务,充分体现出微软的 “云”+“端”战略 。
          • 在中国,微软2014年3月27日宣布由世纪互联负责运营的 Microsoft Azure 公有云服务正式商用,这是国内首个正式商用的国际公有云服务平台。

            国内云计算崛起代表企业:

            四、云计算实现机制

            云计算技术体系结构:

              云计算技术体系结构分为四层:物理资源层、资源池层、管理中间件层和 SOA(Service-Oriented Architecture,面向服务的体系结构)构建层。物理资源层包括计算机、存储器、网络设施、数据库和软件等。资源池层是将大量相同类型的资源构成同构或接近同构的资源池,如计算资源池、数据资源池等。构建资源池更多的是物理资源的集成和管理工作,例如研究在一个标准集装箱的空间如何装下2000个服务器、解决散热和故障节点替换的问题并降低能耗。管理中间件层负责对云计算的资源进行管理,并对众多应用任务进行调度,使资源能够高效、安全地为应用提供服务。SOA 构建层将云计算能力封装成标准的 Web Services 服务,并纳入 SOA 体系进行管理和使用,包括服务接口、服务注册、服务查找、服务访问和服务工作流等。管理中间件层和资源池层是云计算技术的最关键部分,SOA 构建层的功能更多依靠外部设施提供。

            云计算的管理中间件层:

              基于上述体系结构,以 IaaS 云计算为例,简述云计算的实现机制,如下简化的IaaS实现机制图:

            • 用户交互接口向应用以Web Services方式提供访问接口,获取用户需求。
            • 服务目录是用户可以访问的服务清单。
            • 系统管理模块负责管理和分配所有可用的资源,其核心是负载均衡。
            • 配置工具负责在分配的节点上准备任务运行环境。
            • 监视统计模块负责监视节点的运行状态,并完成用户使用节点情况的统计。

              五、云计算压倒性的成本优势

                为什么云计算拥有划时代的优势?主要原因在于它的技术特征和规模效应所带来的压倒性的性能价格比优势。

                全球企业的IT开销分为三部分:硬件开销、能耗和管理成本。根据 IDC 在2007年做过的一个调查和预测,从1996年到2010年,全球企业 IT 开销中的硬件开销是基本持平的。但能耗和管理的成本上升非常迅速,以至于到2010年管理成本占了 IT 开销的大部分,而能耗开销越来越接近硬件开销了。

                如果使用云计算的话,系统建设和管理成本有很大的区别,如下表所示。根据 James Hamilton 的数据,一个拥有5万个服务器的特大型数据中心与拥有1000个服务器中型数据中心相比,特大型数据中心的网络和存储成本只相当于中型数据中心的 1/7 ~ 1/5 ,而每个管理员能够管理的服务器数量则扩大到7倍之多。因而,对于规模通常达到几十万乃至上百万台计算机的亚马逊和谷歌云计算而言,其网络、存储和管理成本比中型数据中心至少可以降低 5~7 倍。

              中型数据中心和特大型数据中心的成本比较:

              项目中型数据中心成本特大型数据中心成本比率
              网络$95 每 Mb/秒/月$13 每 Mb/秒/月7.3
              存储$2.20 每 GB/月$0.40 每 GB/月5.7
              管理每个管理员约管理140个服务器每个管理员管理1000个服务器以上7.1

                电力和制冷成本也会有明显的差别。例如,美国爱达荷州的水电资源丰富,电价很便宜。而夏威夷州是岛屿,本地没电力资源,电力价格就比较贵。二者最多相差 7 倍,如下表所示。

              美国不同地区电力价格的差异:

              价格地点可能的定价原因
              3.6美分爱达荷州水力发电,没有长途输送
              10.0美分加州电力在电网上长途输送,湾区的输送线有限,加州不允许煤电
              18.0美分夏威夷发电的能源需要海运到岛上

                因为电价有如此显著的差异,谷歌的数据中心一般选择在人烟稀少、气候寒冷、水电资源丰富的地区,这些地点的电价、散热成本、场地成本、人力成本等都远远低于人烟稠密的大都市。剩下的挑战是要专门铺设光纤到这些数据中心。不过,由于光纤密集波分复用技术(DWDM)的应用,单根光纤的传输容量已超过 10Tbit/s ,在地上开挖一条小沟埋设的光纤所能传输的信息容量几乎是无限的,远比将电力用高压输电线路引入城市要容易得多,而且没有衰减。拿谷歌的话来说,“传输光子比传输电子要容易得多” 。这些数据中心采用了高度自动化的云计算软件来管理,需要的人员很少,而为技术保密而拒绝外人进入参观,让人有一种神秘的感觉,故被人戏称为 “信息时代的核电站” ,如下图所示。

              “信息时代核电站”—Google数据中心

                

              某典型网站的流量数据:

              • 提供弹性的服务,在超大资源池中动态分配和释放资源
              • 云计算平台的规模极大,比较容易平稳整体负载
              • 资源利用率达到80%左右,是传统模式5~7倍

                  综上所述,由于云计算有更低的硬件和网络成本、更低管理成本和电力成本,也有更高的资源利用率,两个乘起来就能够将成本节省30倍以上,如下图所示。这是个惊人的数字!这是云计算成为划时代技术的根本原因。

                云计算较之传统方式的性价比优势:

                  云计算将计算变成了大众用得上和用得起的“水和电”。