云计算

  • 时间:
  • 来源:互联网

第八章 云计算原理与技术

云计算分类

云计算按照提供服务的类型可以分为
1、基础设施即服务(IaaS)——领域代表者(Amazon)
云计算的基础,为上层云计算服务提供必要的硬件资源,同时在虚拟化技术的支持下,创建虚拟的计算、存储中心,使得其能够把计算单元、存储器、I/O设备、带宽等计算机基础设施,集中起来成为一个虚拟的资源池来对外提供服务。虚拟化技术是IaaS的关键技术。

2、平台即服务(PaaS)——领域代表者(Google)
PaaS的关键技术包括并行编程模型、海量数据库、资源调度与监控、超大型分布式文件系统等分布式并行计算平台技术。

3、软件即服务(SaaS)——领域代表者(Salesforce)
云计算要求硬件资源和软件资源能够更好地被共享,具有良好的伸缩性,任何一个用户能够按照自己的需求进行定制而不影响其他用户的使用。多租户技术就是云计算环境中能够满足上述需求的关键技术,而软件资源共享则是SaaS的服务目的,用户可以使用按需定制的软件服务,通过浏览器访问所需的服务,如处理文字、照片管理等,而且不需要安装此类软件。

SaaS的价值:
降低中小企业信息化的门槛
降低企业用户运营成本
提供灵活的租赁方式

承载平台:
1、直接部署在底层物理资源上
2、SaaS层部署在PaaS和IaaS平台之上

云计算关键技术

云计算可以按需提供弹性的服务,他的体系构架大致分为3个层次:核心服务层、服务管理层、用户访问接口层。

核心服务层

核心服务层通常分为3个子层:IaaS、PaaS、SaaS

IaaS:提供硬件基础设施部署服务,为永华按需提供尸体或虚拟的计算、存储和网络等资源。

PaaS:是云计算应用程序运行环境,提供应用程序部署与管理服务。

SaaS:是基于云计算基础平台所开发的应用程序。

服务管理层

服务管理层为核心服务层的可用性、可靠性和安全性提供保障。服务管理包括服务质量保证和安全管理等。

用户访问接口层

用户访问接口层实现了云计算服务的泛在访问,通常包括命令行、web服务、web门户等形式。

数据存储

云计算环境下的数据存储,通常称为海量数据存储,或大数据存储。
在这里插入图片描述

计算模型

云计算模型是一种可编程的并行计算框架,需要高扩展性和容错性支持。目前比较成熟的技术有MapReduce、Dravd.
MapReduce是Google提出的并行程序编程模型,运行于GFS(分布式文件存储系统)之上。MapReduce的设计思想在于将问题分而治之,首先将用户的原始数据进行分块,然后分别交给不同的Map任务去处理。Map任务输入中解析出键-值集合,然后对这些集合执行用户自行定义的Map函数得到的中间结果,并将该结果写入本地硬盘。Reduce任务从硬盘上读取数据之后会根据键值进行排序,将具有相同4键值的数据组织在一起。最后应用用户自定义的Reduce函数处理这些排好序的结果并输出最终答案。

资源调度

主要解决如何将资源最大化,让性能最佳,完成最快云计算平台的资源调度包括:异构资源管理、资源合理调度与分配。

虚拟化

云计算的发展离 不开虚拟化技术。虚拟化技术可以将物理上的单台服务器虚拟成逻辑上的多台服务器环境。可以修改单台虚拟机的分配CPU、内存空间、硬盘等,每台虚拟机逻辑上可以被单独作为服务器使用。通过这种分割行为,将闲置或处于低峰的服务器使用起来,使数据中心为云计算提供大规模资源,通过虚拟化技术实现基础设施服务的按需分配。虚拟化是laaS层的重要组成部分,也是云计算的重要特点。
虚拟化的特点:
1)资源共享 2)资源定制 3)细粒度资源管理
虚拟化技术成为实现云计算资源池化和按需服务的基础

Google云计算原理

Google 的云计算基础架构模式包括4个相互独立又紧密结合在一起的系统:Google File System 分布式文件系统(GFS)、分布式的锁机制Chubby、Google 开发的模型简化的大规模分布式数据库BigTable以及针对Google 应用程序的特点提出的MapReduce编程模式。

GFS

一个GFS集群包含一个主服务器和多个块服务器,被多个客户端访问。大文件被分割成固定尺寸的块,块服务器把块作为Limux文件保存在本地硬盘上,并根据指定的块句柄和字节范围来读写块数据。为了保证可靠性,每个块被默认保存3个备份。主服务器管理文件系统所有的元数据,包括名字空间、访问控制、文件到块的映射、块物理位置等相关信息。通过服务器端和客户端的联合设计,GFS对应用支持达到最优性能与可用性。GFS是为Google用程序本身而设计的,在内部部署了许多GFS集群,有的集群拥有超过100个存储结点,超过300TB的硬盘空间,被不同机器上的数百个客户端连续不断地
频紧访问着。

MapReduce

一个软件架构,是一种处理海量数据的并行编程模式用于大规模数据集(通常大于1TB)的并行运算。
MapReduce实现了Map和Reduce两个功能。
Map把一个函数应用于集合中的所有成员,然后返回一个基于这个处理的结果集Reduce对结果集进行分类和归纳。
Map()和 Reduce() 两个函数可能会并行运行,即使不是在同一的系统的同一时刻。

BigTable

Google目前向公众开放的服务很多,需要处理的数据类型也非常多。包括URL、网页内容、用户的个性化设置在内的数据都是Google需要经常处理的 ,为此Google开发了满足弱一致性要求的大规模数据库系统——BigTable。

设计动机:
1、需要存储的数据种类繁多
2、海量的服务请求
3、商用数据库无法满足

Amazon云服务

作为全球最大的电子商务网站,Amazon为了处理数量庞大的并发访问和交易购置了大量服务器。目前,Amazon云服务主要包括弹性计算云、简单存储服务、简单数据库服务、简单队列服务、弹性MapReduce、内容推送服务、数据库导入/导出服务、关系数据库服务等。

昵称小丁
发布了8 篇原创文章 · 获赞 0 · 访问量 54
私信 关注

本文链接http://element-ui.cn/news/show-1048.aspx