终于有人把云计算和数据库的关系讲明白了
发布时间:2021-12-07 10:50:23 所属栏目:云计算 来源:互联网
导读:2006年Google的CEO埃里克施密特首次提出了云计算(Cloud Computing)的概念。2011年,哥伦比亚大学的Prof.Stolfo教授提出雾计算(Fog Computing),后被思科公司理论化。云计算是集中式计算,埃森哲(Accenture)公司给出了的云计算定义:第三方提供商通过网络动态
2006年Google的CEO埃里克·施密特首次提出了云计算(Cloud Computing)的概念。2011年,哥伦比亚大学的Prof.Stolfo教授提出雾计算(Fog Computing),后被思科公司理论化。云计算是集中式计算,埃森哲(Accenture)公司给出了的云计算定义:第三方提供商通过网络动态提供及配置IT功能(硬件、软件或服务)。 而雾计算是云计算概念的延伸,是局域网的分布式计算方式,符合互联网的“去中心化”特征,其低延时、位置感知、广泛的地理分布、适应移动性的应用特征,使得该计算范式可支持更多的边缘节点。 2011年,同时出现了边缘计算(Edge Computing)的概念,OpenStack社区给出的定义为:边缘计算是为应用开发者和服务提供商在网络的边缘侧提供云服务和IT环境服务,目标是在靠近数据输入或用户的地方提供计算、存储和网络带宽。 雾计算和边缘计算的区别在于,雾计算具有层次性、网式架构;而边缘计算依赖于不构成网络的单独节点。雾计算中的不同节点之间具有广泛的对等互连能力,而边缘计算是孤岛中运行的节点,这样的节点被容纳入云或雾的网络中可实现流量传输。 云计算、雾计算、边缘计算,是三种不同但又相关的计算范式,每种范式对于数据库系统而言,都有提出不同需求的可能。如今,云计算中的云数据库的特征基本探明,但也在发展中。而雾计算中的雾数据库的特征尚未有提出,边缘计算中的数据库是否是可从传统的单机数据库系统稍加演化得到,也尚未有提及或讨论。 但是,三种不同的计算方式,必然适用于不同类型的应用,对于数据的存储、管理、计算、交换的需求,也必有差异,深入研究不同应用的需求和特点,可得到不同类型的数据库。未来数据库的类型或形态必然会更加丰富多彩。 云原生 早在云原生概念出现之前,就出现了Cloud Foundry的概念,其内容可以被概括为一种方法论,称为12要素应用程序(12-Factor App)。根据这12个要素,人们对数据库提出了如下一些具体的要求,使得数据库的架构和功能发生了变化。 12要素应用的任意部署,都应该可以在不进行任何代码改动的情况下完成,将本地MySQL数据库换成第三方服务(例如 Amazon RDS)。与此类似,本地SMTP服务应该也可以和第三方SMTP服务(例如Postmark)互换。这使得云应用研发不深度依赖于数据库系统,使得云数据库之间的功能差异化竞争被消灭。 12要素反对与会话具有高黏性。会话中的数据应该保存在诸如Memcached或Redis等带有过期时间的缓存中。这就要求云数据库服务要么有多种产品支持不同能力,要么在一个产品内提供带有过期时间的缓存。 12要素应用本身从不考虑存储自己的输出流,即不提倡提供日志功能(不写或者管理日志文件),而是把信息直接输出到标准输出(stdout)事件流。在开发环境中,开发人员可以通过这些数据流,在终端实时看到应用的活动。在应用端不能提供日志以供确认问题,这对服务端的数据库提出了更高的要求:第一数据绝对保持强一致而不存储,第二数据库自身有分析等位问题的能力。但是,不是所有类型的应用都适合进行这方面的设计和实现,大型复杂类应用和网站类应用的定位问题多依赖于日志。 Matt Stine于2017年在一次技术大会的分享中提出“Cloud Foundry与微服务:一种共生关系”的概念,云原生(Cloud Native)的概念正式诞生。他将云原生归纳模块化、可观察、可部署、可测试、可替换、可处理6个特质。 Matt Stine认为:服务的基本原则是有一个清晰的专注点(对应用功能细分的要求)、一个清晰的契约(应用与后台服务之间的接口定义要清晰)、一个清晰的API(应用与后台服务之间的接口在形式上要明确好用)。 云原生通常被认为是一个思想的集合,包括了诸多内容:DevOps、持续交付(Continuous Delivery)、微服务(MicroServices)、敏捷基础设施(Agile Infrastructure)、康威定律(Conways Law)等,以及根据商业能力对公司进行重组。 这使得云原生的概念全面且复杂,其成为一系列技术、企业管理方法的集合,其中既包含了技术(微服务、敏捷基础设施),也包含了管理(从DevOps、持续交付、康威定律、重组等层面对技术进行管理)。 云计算使得传统的应用方式发生了变化,其自身具有的特点如下。 1. 规模化 IT设施从零散化走向集中化、规模化。大型数据中心被大量建立,作为基础设施向全社会提供集中式服务。 2. 资源池化 IT设施规模化以后,基于弹性服务的要求,需要对硬件资源统一管理。业务规模应可动态瞬时扩缩容,因此要池化硬件资源以提供弹性服务。 云计算,是期望通过互联网络为用户提供按需使用的IT资源服务。因此,云服务商要保证在所提供的硬件资源上拥有容量充足的资源池,以保证在并发业务高峰时刻可以满足用户的服务要求,这就是云服务的资源池化。 (编辑:随州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |