武汉理工大学 云计算与服务计算 期末复习

云计算与的定义

长定义是:“云计算是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。”
短定义是:“云计算是通过网络按需提供可动态伸缩的廉价计算服务

云计算的特点

(1)超大规模。“云”具有相当的规模,谷歌云计算已经拥上百万台服务器,亚马
逊、IBM、微软、Yahoo、阿里、百度和腾讯等公司的“云”均拥有几十万台服务
器。“云”能赋予用户前所未有的计算能力。
(2)虚拟化。云计算支持用户在任意位置、使用各种终端获取服务。所请求的资源
来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际上用户无须了解应
用运行的具体位置,只需要一台计算机、PAD或手机,就可以通过网络服务来获取各种能
力超强的服务。
(3)高可靠性。“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服
务的高可靠性,使用云计算比使用本地计算机更加可靠。
(4)通用性。云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应
用,同一片“云”可以同时支撑不同的应用运行。
(5)高可伸缩性。“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。
(6)按需服务。“云”是一个庞大的资源池,用户按需购买,像自来水、电和煤气那
样计费。
(7)极其廉价。“云”的特殊容错措施使得可以采用极其廉价的节点来构成
云;“云”的自动化管理使数据中心管理成本大幅降低;“云”的公用性和通用性使资源的利
用率大幅提升;“云”设施可以建在电力资源丰富的地区,从而大幅降低能源成本。因
此“云”具有前所未有的性能价格比。

大数据的特点

4V+1C。
(1)数据量大(Volume):存储的数据量巨大,PB级别是常态,因而对其分析的计
算量也大。
(2)多样(Variety):数据的来源及格式多样,数据格式除了传统的结构化数据
外,还包括半结构化或非结构化数据,比如用户上传的音频和视频内容。而随着人类活动
的进一步拓宽,数据的来源更加多样。
(3)快速(Velocity):数据增长速度快,而且越新的数据价值越大,这就要求对数
据的处理速度也要快,以便能够从数据中及时地提取知识,发现价值。
(4)价值密度低(Value):需要对大量的数据进行处理,挖掘其潜在的价值,因
而,大数据对我们提出的明确要求是设计一种在成本可接受的条件下,通过快速采集、发
现和分析,从大量、多种类别的数据中提取价值的体系架构。
(5)复杂度(Complexity):对数据的处理和分析的难度大。

Google文件系统GFS

Google文件系统(Google File System,GFS)是一个大型的分布式文件系统。它为
Google云计算提供海量存储,并且与Chubby、MapReduce及Bigtable等技术结合十分紧
密,处于所有核心技术的底层。GFS不是一个开源的系统,我们仅能从Google公布的技术
文档来获得相关知识。

Google GFS的新颖之处在于它采用廉价的商用机器构建分布式文件系统,同时将GFS
的设计与Google应用的特点紧密结合,简化实现,使之可行,最终达到创意新颖、有用、
可行的完美组合。GFS将容错的任务交给文件系统完成,利用软件的方法解决系统可靠性
问题,使存储的成本成倍下降。GFS将服务器故障视为正常现象,并采用多种方法,从多
个角度,使用不同的容错措施,确保数据存储的安全、保证提供不间断的数据存储服务。

GFS的特点:

(1)采用中心服务器模式,简化了设计。
(2)不缓存数据。
(3)在用户态下实现,降低耦合度和编程难度。
(4)只提供专用接口,降低了实现难度和复杂度,提高了通用性和效率。

MapReduce模型

MapReduce是Google提出的一个软件架构,是一种处理海量数据的并行编程模式,用
于大规模数据集(通常大于1TB)的并行运算。Map(映射)、Reduce(化简)的概念和
主要思想,都是从函数式编程语言和矢量编程语言借鉴来的。正是由于MapReduce有函
数式和矢量编程语言的共性,使得这种编程模式特别适合于非结构化和结构化的海量数据
的搜索、挖掘、分析与机器智能学习等。

简单地说,一个Map函数就是对一部分原始数据进行指定的操作。每个Map操作都针
对不同的原始数据,因此Map与Map之间是互相独立的,这使得它们可以充分并行化。一
个Reduce操作就是对每个Map所产生的一部分中间结果进行合并操作,每个Reduce所处理
的Map中间结果是互不交叉的,所有Reduce产生的最终结果经过简单连接就形成了完整的
结果集,因此Reduce也可以在并行环境下执行。
在这里插入图片描述

分布式锁服务Chubby

Chubby是Google设计的提供粗粒度锁服务的一个文件系统,它基于松耦合分布式系
统,解决了分布的一致性问题。通过使用Chubby的锁服务,用户可以确保数据操作过程
中的一致性。不过值得注意的是,这种锁只是一种建议性的锁(Advisory Lock)而不是
强制性的锁(Mandatory Lock),这种选择使系统具有更大的灵活性。

通常情况下Google的一个数据中心仅运行一个Chubby单元(Chubby cell,下面会
有详细讲解述),这个单元需要支持包括GFS、Bigtable在内的众多Google服务,因此,
在设计Chubby时候,必须充分考虑系统需要实现的目标以及可能出现的各种问题。
Chubby的设计目标主要有以下几点。
(1)高可用性和高可靠性。这是系统设计的首要目标,在保证这一目标的基础上再
考虑系统的吞吐量和存储能力。
(2)高扩展性。将数据存储在价格较为低廉的RAM,支持大规模用户访问文件。
(3)支持粗粒度的建议性锁服务。提供这种服务的根本目的是提高系统的性能。
(4)服务信息的直接存储。可以直接存储包括元数据、系统参数在内的有关服务信
息,而不需要再维护另一个服务。
(5)支持通报机制。客户可以及时地了解到事件的发生。
(6)支持缓存机制。通过一致性缓存将常用信息保存在客户端,避免了频繁地访问
主服务器。

Chubby文件系统

Chubby系统本质上就是一个分布式的、存储大量小文件的文件系统,它所有的操作
都是在文件的基础上完成的。例如在Chubby最常用的锁服务中,每一个文件就代表了一
个锁,用户通过打开、关闭和读取文件,获取共享(Shared)锁或独占(Exclusive)锁。
选举主服务器的过程中,符合条件的服务器都同时申请打开某个文件并请求锁住该文件。
成功获得锁的服务器自动成为主服务器并将其地址写入这个文件夹,以便其他服务器和用
户可以获知主服务器的地址信息。

Chubby 的主要功能

分布式锁: Chubby 提供了一个分布式锁服务,允许多个进程或线程在同一时间对共享资源进行访问控制。它保证了多个进程或线程对共享资源的访问是互斥的,从而避免了冲突和数据不一致的问题。

命名空间管理: Chubby 提供了一个命名空间,用于存储元数据和配置信息。这些信息可以被分布式系统中的各个组件访问和更新。

服务发现: Chubby 可以用来发现分布式系统中的服务。它维护了一个服务注册表,其中包含了系统中所有服务的位置和状态信息。客户端可以通过查询 Chubby 来找到所需的服务。

Chubby 的作用

保证数据一致性: 通过分布式锁机制,Chubby 保证了分布式系统中数据的一致性。

简化分布式系统设计: Chubby 提供了命名空间管理和服务发现等功能,简化了分布式系统的设计。

提高分布式系统可靠性: Chubby 的容错机制提高了分布式系统的可靠性。

Chubby 的应用场景:

分布式数据库: Chubby 可以用来保证分布式数据库中数据的一致性。

分布式缓存: Chubby 可以用来协调分布式缓存中的数据更新。

分布式消息队列: Chubby 可以用来保证分布式消息队列的有序性和一致性。

分布式结构化数据表BigTable

Bigtable是Google开发的基于GFS和Chubby的分布式存储系统。Google的很多数据,包括Web索引、卫星图像数据等在内的海量结构化和半结构化数据,都存储在Bigtable中。从实现上看,Bigtable并没有什么全新的技术,但是如何选择合适的技术并将这些技术高效、巧妙地结合在一起恰恰是最大的难点。Bigtable在很多方面和数据库类似,但它并不是真正意义上的数据库。通过本节的学习,读者将会对Bigtable的数据模型、系统架构、实现以及它使用的一些数据库技术有一个全面的认识。

Bigtable 的主要特点:

(1)分布式存储: Bigtable 将数据分布存储在多个服务器上,能够处理 PB 级的数据规模。
(2)可扩展性: Bigtable 可以根据数据量的增长动态扩展,无需停机维护。
(3)高性能: Bigtable 提供了低延迟的数据访问,能够满足实时数据查询的需求。
(4)多模型支持: Bigtable 支持多种数据模型,包括稀疏数据、半结构化数据等。
(5)强一致性: Bigtable 提供了强一致性保证,确保数据在所有副本之间保持一致。

基础存储架构Dynamo

当Web服务刚刚兴起时,各种平台大多采用关系型数据库进行数据存储。但由于Web数据中大部分为半结构化数据且数据量巨大,关系型数据库无法满足其存储要求。为此,很多服务商都设计并开发了自己的存储系统。其中,Amazon的Dynamo是非常具有代表性的一种存储架构,被作为状态管理组件用于AWS的很多系统中。2007年,Amazon将Dynamo以论文形式发表,引起了广泛的关注,并被作为其他云存储架构的基础和参照,例如最初由Facebook开发的开源分布式数据库Cassandra。

EC2

弹性计算云服务(Elastic Compute Cloud,EC2)是AWS的重要组成部分,用于提供大小可调节的计算容量[13]。它为用户提供了许多非常有价值的特性,包括低成本、灵活性、安全性、易用性和容错性等[8]。借助Amazon EC2,用户可以在不需要硬件投入的情况下,快速开发和部署应用程序,并方便地配置和管理。

在这里插入图片描述
EC2的关键技术有:

1.地理区域和可用区域
AWS中采用了两种区域[13](Zone):地理区域(Region Zone)和可用区域(Availability Zone)。其中,地理区域是按照实际的地理位置划分的。目前,Amazon在全世界共有10个地理区域,包括:美东(北佛吉尼亚)、美西(俄勒冈)、美西(北加利佛尼亚)、欧洲(爱尔兰)、亚太(新加坡)、亚太(东京)、亚太(悉尼)、南美(圣保罗)、美西服务政府的GovCloud区域和中国(北京)区域。而可用区域的划分则是根据是否有独立的供电系统和冷却系统等,这样某个可用区域的供电或冷却系统错误就不会影响到其他可用区域,通常将每个数据中心看做一个可用区域。图3-12展示了两者之间的关系。EC2系统中包含多个地理区域,而每个地理区域中又包含多个可用区域。为了确保系统的稳定性,用户最好将自己的多个实例分布在不同的可用区域和地理区域中。这样在某个区域出现问题时可以用别的实例代替,最大限度地保证了用户利益。
在这里插入图片描述

2.EC2的通信机制
在EC2服务中,系统各模块之间及系统和外界之间的信息交互是通过IP地址进行的。EC2中的IP地址包括三大类:公共IP地址[13](Public IP Address)、私有IP地址[13](Private IP Address)及弹性IP地址[13](Elastic IP Address)。EC2的实例一旦被创建就会动态地分配两个IP地址,即公共IP地址和私有IP地址。公共IP地址和私有IP地址之间通过网络地址转换(Network Address Translation,NAT)技术实现相互之间的转换。公共IP地址和特定的实例相对应,在某个实例终结或被弹性IP地址替代之前,公共IP地址会一直存在,实例通过这个公共IP地址和外界进行通信。私有IP地址也和某个特定的实例相对应,它由动态主机配置协议(DHCP)分配产生。
3.弹性负载平衡(Elastic Load Balancing)
弹性负载平衡功能允许EC2实例自动分发应用流量,从而保证工作负载不会超过现有能力,并且在一定程度上支持容错。弹性载平衡功能可以识别出应用实例的状态,当一个应用运行不佳时,它会自动将流量路由到状态较好的实例资源上,直到前者恢正常才会重新分配流量到其实例上。
4.监控服务(CloudWatch)
Amazon CloudWatch提供了AWS资源的可视化监测功能,包括EC2实例状态、资源利用率、需求状况、CPU利用率、磁盘读取、写入和网络流量等指标。使用CloudWatch时,用户只需要选择EC2实例,设定监视时间,CloudWatch就可以自动收集和存储监测数据。用户可以通过AWS服务管理控制台或命令行工具来维护和处理这些监测数据。
5.自动缩放(AutoScaling)
自动缩放可以按照用户自定义的条件,自动调整EC2的计算能力。在需求高峰期时,该功能可以确保EC2实例的处理能力无缝增大;在需求下降时,自动缩小EC2实例规模以降低成本。自动缩放功能特别适合周期性变化的应用程序,它由CloudWatch自动启动。
6.服务管理控制台(AWS Management Console)
服务管理控制台是一种基于Web的控制环境,可用于启动、管理EC2实例和提供各种管理工具和API接口。图3-13展示了各项技术通过互相配合来实现EC2的可扩展性和可靠性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/24379.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Lecture1——对最优化的介绍

一,简介——什么是最优化? 1,三种问题: 用80米的围栏尽可能的围成一个面积最大的矩形如何规划产品的生产,使得公司获得的利润最大给你一个图(Graph),如何获得最短的距离 2&#xf…

MATLAB基础应用精讲-【数模应用】主成分(pca)分析(补充篇)(附MATLAB、R语言和python代码实现)

目录 前言 几个高频面试题目 主成分分析(PCA)与独立成分分析(ICA) 1. 技术背景 2. 主成分分析 3. 独立成分分析 算法原理 数据降维 PCA 涉及的主要问题 PCA 的优化目标 主成分分析(PCA)的基本思想 数学模型 协方差和散度矩阵 PCA的推导:基于最小投影距离 ​…

matlab BP神经网络

clear clc % 准备数据 inputs rand(10, 100); % 100组输入,每组10个特征 outputs rand(1, 100); % 100组输出,每组1个输出值 % 将数据分成训练集和测试集 trainRatio 0.8; valRatio 0.1; testRatio 0.1; [trainInd, valInd, testInd] divid…

数据结构笔记2 栈和队列

为什么在循环队列中,判断队满的条件是(Q.rear1)模maxqsize? 取模运算(%)在循环队列中起到关键作用,主要是因为它能确保索引值在数组的有效范围内循环。具体来说,取模运算有以下几个重要作用&am…

【Go语言精进之路】构建高效Go程序:了解切片实现原理并高效使用

🔥 个人主页:空白诗 文章目录 引言一、切片究竟是什么?1.1 基础的创建数组示例1.2 基础的创建切片示例1.3 切片与数组的关系 二、切片的高级特性:动态扩容2.1 使用 append 函数扩容2.2 容量管理与性能考量2.3 切片的截取与缩容 三…

底板外设倒灌到处理器分析

在嵌入式系统中,底板外设通常与处理器通过各种接口(如UART、SPI、I2C、GPIO等)进行连接。这些外设可能包括传感器、执行器、存储器、通信模块等。倒灌是指当外设向处理器提供的信号电平超出了处理器能够接受的范围,导致处理器无法…

无锡哲讯——机械行业ERP管理系统,引领智能制造新纪元

机械行业作为现代工业的基石,正面临着前所未有的变革。随着智能制造的兴起,ERP管理系统在机械行业中的作用日益凸显。无锡哲讯智能科技有限公司,凭借其在ERP领域的专业实力和丰富经验,为机械行业客户提供定制化的ERP解决方案&…

【Python错误】:AttributeError: ‘generator‘ object has no attribute ‘next‘解决办法

【Python错误】:AttributeError: ‘generator’ object has no attribute next’解决办法 在Python中,生成器是一种使用yield语句的特殊迭代器,它允许你在函数中产生一个值序列,而无需一次性创建并返回整个列表。然而,…

微信小程序毕业设计-家庭事务管理系统项目开发实战(附源码+论文)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计…

算法2:滑动窗口(下)

文章目录 水果成篮找到字符串中所有字母异位词串联所有单词的子串*最小覆盖子串* 水果成篮 两元素排空操作 窗口中存在元素交错情况&#xff0c;所以出窗口一定要出干净&#xff01;&#xff01;&#xff01; class Solution { public:int totalFruit(vector<int>& …

行心科技中禄松波携手,开启智能健康新时代

在2024年第34届健博会暨中国大健康产业文化节的盛大舞台上&#xff0c;广州市行心信息科技有限公司&#xff08;以下简称“行心科技”&#xff09;与浙江中禄松波生物工程有限公司&#xff08;以下简称“中禄松波”&#xff09;宣布达成战略合作&#xff0c;共同推动医康养产业…

[职场] 美术指导的重要作用 #学习方法#笔记

美术指导的重要作用 美术指导是广告、电影、电视剧等创意作品中的一个重要角色&#xff0c;负责整体视觉风格和美术设计的指导和管理。 美术指导的目标是通过视觉表达来传达故事的情感、氛围和主题&#xff0c;以及塑造角色和场景的形象。 美术指导在创作过程中扮演着重要的角…

Linux网络的DHCP配置

文章目录 DHCP配置DHCP流程简述DHCP优点DHCP的分配方式DHCP的租约过程DHCP配置实验实验1实验2 DHCP配置 DHCP&#xff1a;动态主机配置协议 服务端和客户端 服务端&#xff1a;server&#xff0c;提供某种特定的服务 客户端&#xff1a;client&#xff0c;使用服务端提供的服…

人体感应提醒 大声公+微波模块

文章目录 模块简介接线程序示例 模块简介 微波感应开关模块 RCWL-0516是一款采用多普勒雷达技术&#xff0c;专门检测物体移动的微波感应模块。采用 2.7G 微波信号检测&#xff0c;该模块具有灵敏度高&#xff0c;感应距离远&#xff0c;可靠性强&#xff0c;感应角度大&#…

Ruoyi-Vue-Plus 下载启动后菜单无法点击展开,

1.Ruoyi-Vue-Plus框架下载后运行 2.使用mock数据 3.进入页面后无法点击菜单 本以为是动态路由或者菜单逻辑出了问题&#xff0c;最后发现是websocket的问题 解决办法 把这两行代码注释 页面菜单即可点击。 以上。

【ROS使用记录】—— ros使用过程中的rosbag录制播放和ros话题信息相关的指令与操作记录

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、rosbag的介绍二、rosbag的在线和离线录制三、rosbag的播放相关的指令四、其他rosbag和ros话题相关的指令总结 前言 rosbag是ROS&#xff08;机器人操作系统…

Suse Linux ssh配置免密后仍需要输入密码

【问题描述】 Suse Linux已经配置了ssh免密&#xff0c;但无法ssh到目标服务器。 对自身的ssh登陆也需要输入密码。 系统–Suse 15 SP5 【重现步骤】 1.使用ssh-keygen -t rsa生产key文件 2.使用ssh-copy-id拷贝public key到目标机器(或者自身) 3.配置成功后ssh 目标时仍需要输…

[C#]使用OpenCvSharp图像滤波中值滤波均值滤波高通滤波双边滤波锐化滤波自定义滤波

在使用OpenCvSharp进行图像滤波处理时&#xff0c;各种滤波方法都有其特定的用途和效果。以下是对中值滤波、均值滤波、高通滤波、双边滤波、锐化滤波和自定义滤波的详细解释和归纳&#xff1a; 中值滤波&#xff08;MedianBlur&#xff09; 原理与作用&#xff1a;中值滤波是…

Stable diffusion采样器详解

在我们使用SD web UI的过程中&#xff0c;有很多采样器可以选择&#xff0c;那么什么是采样器&#xff1f;它们是如何工作的&#xff1f;它们之间有什么区别&#xff1f;你应该使用哪一个&#xff1f;这篇文章将会给你想要的答案。 什么是采样&#xff1f; Stable Diffusion模…

UI学习--导航控制器

导航控制器 导航控制器基础基本概念具体使用 导航控制器切换演示具体使用注意 导航栏与工具栏基本概念具体使用&#xff1a; 总结 导航控制器基础 基本概念 根视图控制器&#xff08;Root View Controller&#xff09;&#xff1a;导航控制器的第一个视图控制器&#xff0c;通…