分布式云计算大数据第八章
2006年,Google高级工程师克里斯托弗·比希利亚提出云计算想法,云计算是分布式计算、效应计算、虚拟化技术、Web服务,网格计算等技术的融合与发展,他的目标是用
第八章 云计算原理与技术 2006年,Google高级工程师克里斯托弗·比希利亚提出云计算想法,云计算是分布式计算、效应计算、虚拟化技术、Web服务,网格计算等技术的融合与发展,他的目标是用户通过网络能够在认识时间、任何地点最大限度的使用虚拟资源池,处理大规模计算问题。 定义 是分布式处理、并行处理和网格计算的发展,或者说是这些计算机科学概念的商业实现。是指基于互联网的超级计算模式–即把原本存储于个人电脑、移动设备等个人设备上的大量信息集中在一起,在强大的服务器端协同工作。它是一种新兴的共享计算资源的方法,能够将巨大的系统连接在一起,以提供各种计算服务。 是一种利用互联网实现随时随地,按需,便捷的访问共享资源池的计算模式。5个基本特征:按需自助服务;广泛的网络访问;共享的资源池;快速弹性能力;可度量的服务。3中服务模式:软件即服务(SaaS);平台即服务(PaaS);基础设施即服务(IaaS)4种部署方式:私有云;社区云;公有云;混合云; 一、云计算关键技术 1、体系结构 1). 核心服务层
IaaS IaaS是云计算的基础,为上层云计算提供必要的硬件资源,根据硬件需要,创建虚拟的计算、存储中心,使得其能够把计算单元、存储器、I/O设备、带宽等计算机基础设施,集中起来成为一个虚拟的资源池来对外提供服务,虚拟化技术是IaaS的关键技术 虚拟化是将底层物理设备与上层操作系统、软件分离的一种去耦合技术,其是基于开放的x86架构,将硬件、操作系统和应用程序一同装入一个可迁移的虚拟机档案文件中,虚拟化的目标是实现IT资源利用效率和灵活性的最大化,虚拟化技术在x86架构上比较通用,在RISC架构下比较封闭。
PaaS 把服务器平台或开发环境作为一种服务提供,计算资源平台做为一种服务提供给用户,可支持用户自有的工具与开发环境部署,客户通过可调用的接口拨接资源平台。 SaaS SaaS是一种基于互联网提供软件服务的应用模式,以软件租赁的形式提供给用户,用户不需安装应用软件,打开浏览器即可运行云计算分布式,也不需要额外的服务器硬件,按照用户的需求定制软件。 SaaS部署在PaaS和Iaas上,用户可在PaaS平台上开发并部署SaaS服务,更贱方便用户的使用。
2). 服务管理层 服务管理层为核心服务层的可用性、可靠性和安全性提供保障,包括服务质量保证和安全管理等。 3). 用户访问接口层 用户在云计算的访问均在用户访问接口层实现。 2、关键技术 1). 非关系型数据库(NoSQL) NoSQL仅仅是一个概念,泛指非关系型的数据库,区别于关系数据库,它们不保证关系数据的ACID特性。非关系型数据库与以下分类: 键值(Key-Value)存储数据库 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。 列存储数据库 这部分数据库通常是用来应对分布式存储的海量数据。 文档型数据库 文档型数据库的灵感是来自于Lotus Notes办公软件的,而且它同第一种键值存储相类似。 图形(Graph)数据库 图形结构的数据库同其他行列以及刚性结构的SQL数据库不同,它是使用灵活的图形模型,并且能够扩展到多个服务器上。 2).分布式文件系统 分布式文件系统可以有效解决数据的存储和管理难题:将固定于某个地点的某个文件系统,扩展到任意多个地点/多个文件系统,众多的节点组成一个文件系统网络。每个节点可以分布在不同的地点,通过网络进行节点间的通信和数据传输。人们在使用分布式文件系统时,无需关心数据是存储在哪个节点上、或者是从哪个节点从获取的,只需要像使用本地文件系统一样管理和存储文件系统中的数据。 3).计算模型 云计算的计算模型是一种可编程的并行计算架构。例如Google提出的MapReduce模型,它是一种高扩展性和容错性的模型,运行于GFS 之上。它的设计思想在于将问题分而治之,首先将用户的原始数据源进行分块,然后分别交给不同的Map任务去处理。 3).虚拟化 把有限的固定的资源根据不同需求进行重新规划以达到最大利用率的思路,在IT领域就叫做虚拟化技术。 虚拟化技术的特点是资源共享、资源定制、细粒度资源管理。 二、Google云计算管理 GFS GFS也就是 google File System,是Google公司为了存储海量搜索数据而设计的专用文件系统。它是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。 MapReduce MapReduce最早是由Google公司研究提出的一种面向大规模数据处理的并行计算模型和方法。Google公司设计MapReduce的初衷主要是为了解决其搜索引擎中大规模网页数据的并行化处理。Google公司发明了MapReduce之后首先用其重新改写了其搜索引擎中的Web文档索引处理系统。但由于MapReduce可以普遍应用于很多大规模数据的计算问题,因此自发明MapReduce以后,Google公司内部进一步将其广泛应用于很多大规模数据处理问题。到目前为止,Google公司内有上万个各种不同的算法问题和程序都使用MapReduce进行处理。 MapReduce用在非常广泛的应用程序中,包括“分布grep,分布排序,web连接图反转,每台机器的词矢量,web访问日志分析,反向索引构建,文档聚类,机器学习,基于统计的机器翻译等等。 BigTable BigTable是Google设计的分布式数据存储系统,用来处理海量的数据的一种非关系型的数据库。BigTable是非关系型数据库,是一个稀疏的、分布式的、持久化存储的多维度排序Map。 Bigtable已经在超过60个Google的产品和项目上得到了应用,包括 Google Analytics、GoogleFinance、Orkut、Personalized Search、Writely和GoogleEarth。 (编辑:浙我家) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |