最后更新:2020-05-26 10:17:32 手机定位技术交流文章
近年来,无服务器技术和服务吸引了很多关注,给云计算带来了革命性的变化。
然而,无服务器着陆并没有像预期的那样造成井喷,而是显示了心脏的弱点。原因是什么?
主要原因是无服务器生态缺少最后一块拼图——无服务器数据库,它不能形成完整的无服务器堆栈解决方案。
2020年4月7日,滕循云正式发布了中国第一个无服务器数据库新产品——无服务器PostgreSQL。这样,开发人员可以基于全堆栈无服务器解决方案在滕循云上构建云本地应用程序。
在国外,AWS无服务器服务Aurora无服务器在2018年8月正式支持MySQL版本数据库,在2019年正式支持PostgreSQL数据库。AWS可以根据流量自动扩展,并为用户提供两种按需付费的数据库服务。
无服务器数据库是无服务器生态领域的最后一块拼图。有了这个谜题,无服务器技术和服务的“力量”将会大大增强。

01
无服务器数据库,数据库应用的最新阶段
无服务器也被业界视为继虚拟化和容器技术之后的第三代云计算通用计算平台。通过封装几乎所有的底层资源和系统操作,开发人员可以更轻松地关注应用程序本身,并按需使用云基础架构。
但是,客户只能通过访问层、计算层和数据存储层的无服务器服务来实现它,这样他们就可以真正专注于业务实现,而不必关注底层设施。
云中间件产品中心总经理肖表示,在接入层,通过API网关的灵活性,可以实现安全稳定的流量接入。
在计算层面,业务逻辑是通过——FaaS平台实现的,这是一种面向云服务提供商的高度可用和高度并发的无服务器技术。
在数据存储层,数据库通过无服务器数据库直接连接,并执行SQL操作。
这样,滕循云就有了一套针对整个无服务器体系的核心解决方案,包括无服务器应用编程接口网关、滕循云的无服务器功能计算服务、无服务器对象存储和数据库。
无服务器数据库最初不具备自动扩展的能力。现在通过底层的共享池,中间变成了无状态的计算层,并且数据库还具有快速上下扩展的能力,形成了无服务器数据库。现在用户可以在一秒钟内部署,允许开发人员像编写代码一样使用数据库作为组件。
数据库服务也从传统的自建数据库发展到目前的无服务器数据库。

(数据库服务开发的四个阶段)
数据库应用的第一阶段是用户建立数据库,这是最传统的数据库应用方式。用户在建设自己的机房时,应该考虑数据库的选择,而数据库本身更应该注重机房的物理部署,这是不灵活和不可伸缩的。
第二阶段也是当前数据库应用的主流,是以云上租赁服务的形式向客户提供PaaS服务。在数据库的PaaS服务阶段,用户不需要关心机房的物理部署,而应该关心容量扩展和收缩的时间。
在PaaS模式下使用数据库的过程中,用户经常会遇到对数据库扩展的突然需求。他们能否满足这些突如其来的扩展需求已经成为用户关注的焦点。
在PaaS服务的基础上,云服务提供商还提供基于云的数据库服务,可以提供快速的容量扩展和收缩。这是数据库服务的第三个阶段。
在云主数据库阶段,用户不需要考虑扩展和收缩的时机,但是他们应该考虑它的成本、成本等。基于云的主数据库无法以更小的粒度实现每次使用付费。
第四阶段是无服务器数据库应用阶段。无服务器数据库具有完全自动化的容量扩展能力。它可以随着用户服务请求数量的增加和减少而智能地“扩展”和“收缩”,实现资源的自动“吞吐量”。
这一全自动功能可以为用户带来更经济的充电模式和更流畅的扩展体验。它可以使企业根据请求的繁忙程度实现顺畅的全自动响应,而无需人工干预。
无服务器最初由亚马逊提出,第一个无服务器服务于2014年推出。当时,它的破坏性太大,很多人无法使用,直到最近几年才逐渐被业界接受。
滕循发布的无服务器和无服务器的PostgreSQL数据库只是没有服务架构的PostgreSQL数据库服务。
在西方,开源数据库PostgreSQL已经成为家喻户晓的名字,并被广泛使用。最近,它连续两年获得2017年和2018年数据库引擎奖。" PostgreSQL比其他监控的343数据库管理系统更受欢迎. "
因此,我们使用PostgreSQL来比较无服务器数据库和普通数据库。
首先,无服务器的价值是什么?
服务器是各种可见的服务,如存储服务、文件服务、数据库服务;无服务器不需要关注这些服务,只需要关注业务逻辑本身。云中间件产品中心总经理肖表示,无服务器架构的三个核心概念也体现在无服务器数据库中。
首先,只有在需要时,该服务才会自动上下扩展。它不需要预先部署额外的资源。这将在资源成本、人工成本等方面节省很多。它在机会成本方面也有优势。
其次,按量收费,云服务只在用户应用运行时收费,用户不使用服务时不产生任何费用,这与传统的互联网架构完全不同。在无服务器架构中,如果有请求,将根据一个请求的收费金额进行收费。如果没有请求,底层就不会有任何基础设施或额外的生产成本。
最后,降低门槛。因为无服务器架构更容易使用,所以它允许客户关注业务逻辑,而开发人员关注业务。实现业务云不需要高级技术技能和背景。

(服务器技术没有优势)
滕循云数据库负责人、数据库领域资深技术专家林表示,以PostgreSQL for Serverless为例,与传统的PostgreSQL相比,首先具有云起源的能力,可以快速扩展和自动收缩容量。像海绵一样,它吸水时会自动膨胀,不使用时会减少容量。
众所周知,传统数据库需要根据业务的实际使用情况手动调整数据库容量的大小。即使对于数据库方面的专家来说,在面对高度不稳定的应用程序时,考虑到性能和成本,也不容易手动管理数据库容量,而无服务器的PostgreSQL很好地平衡了这一点。
其次,由于数据库容量的大小可以动态管理,即资源可以根据业务请求的繁忙程度自动响应,用户不需要为数据库的空闲时间付费,只需要为数据库活动中实际占用的数据容量和响应资源付费,无服务器可以大大降低用户的使用门槛,用户不需要提前规划资源, 并且具有高灵活性、高可用性、按需使用、批量支付等特点,用户可以省心、省力、省钱。
第三,无服务器数据库产品的PostgreSQL本身是基于PostgreSQL数据库的,因此它与PostgreSQL的语法和功能是100%兼容的。同时,云之上的PostgreSQL提供的高可靠性、高性能和高可用性功能自然集成在一起,例如备份恢复和自动文件检索,而不用担心被删除。
使用无服务器数据库有什么不足或缺点吗?专家认为云服务提供商需要在无服务器数据库上至少从两个方向努力。
一个是,与那些运行在专有服务器、虚拟机或容器中的数据库相比,不经常使用的数据库可能会有严重的响应延迟问题。
如果云服务提供商发现无服务器数据库已经很长时间没有使用了,它将完全关闭它。这意味着,如果数据库需要一些时间来开始运行,将会有一个延迟。
其次,无服务器数据库通常被认为比传统数据库更安全。事实上,与传统架构相比,由于无服务器架构中有更多的应用组件,随着应用入口点的增加,其被攻击的可能性也会成倍增加。
02
有了无服务器数据库,无服务器生态系统将一起生活。
在云计算领域,在第一家公司引入任何新技术或服务后,几乎所有的主要公司都会在两三年内跟进并引入相应的技术和服务。
无服务器技术就是这种情况,无服务器数据库域保持不变。
在2017年的re:Invent大会上,AWS宣布推出云数据库无服务器服务。数据库将自动启动、关闭和扩展。
AWS云数据库无服务器极光无服务器正式支持MySQL和PostgreSQL。Aurora Serverless可以根据流量自动扩展,并为用户提供按需付费的数据库服务。
用户只需要创建数据库端点,选择他们想要使用的数据库引擎,并选择容量。用户可以设置极光无服务器的最大和最小容量。用户的应用程序连接到代理机队,代理机队将工作负载路由到具有自动扩展功能的资源池。当满足某些条件(如达到设定的CPU使用阈值)时,用户可以设置为扩展。
AWS提到所有资源池都是“热资源”,扩展速度非常快,因此计算资源可以随时增加。为了满足突如其来的需求。由于Aurora的数据库计算资源和存储层是独立的,因此数据库容量设置不会影响数据库的性能。
在亚马逊的RDS管理控制台中,用户也可以通过点击鼠标在标准配置和无服务器配置之间切换。
滕循云正式发布的无服务器数据库新产品PostgreSQL for Serverless,与普通云上的数据库相比,可以在1秒钟内完成部署,降低成本70%。
林表示,此次发布的数据库是中国第一个基于无服务器技术开发的新数据库。它不仅具有无服务器带来的低成本、易扩展的优点,而且还具有PostgreSQL实例本身的高可用性、高性能和高安全性的特点。该数据库的发布是腾迅云数据库拥抱云的原创战略的又一次登陆,将进一步巩固腾迅云数据库在中国的优势。
由于没有初始化过程,用户只需在购买后点击滕循云的相关组件就可以创建一个数据库实例,部署可以在1秒钟内完成,大大提高了部署效率。
同时,滕循云无服务器PostgreSQL在可用性和安全性方面也有突出的优势,包括支持“一主一备”。当主实例因意外事件而变得不可用时,备份实例将自动启动,业务连接将同步转移到备份实例,从而有效避免各种意外事件导致数据库不可用的风险。此外,它还支持标准PostgreSQL数据库本身的功能优势,如丰富的插件和方便的备份恢复。
据介绍,该数据库主要是针对当前开发人员在使用数据库时遇到的困难而设计的,包括成本高和性能体验差。例如,对于低流量应用程序的用户,通常不可能最大化使用最小分配标准实例的性能,但是需要为额外的性能付费。无服务器的PostgreSQL避免了为额外的性能付费。此外,该数据库对于不可预测的工作负载、不常用的应用程序、数据库开发和测试以及其他场景也有极强的应用价值。
目前,市场上也有一些开源的无服务器数据库。例如,Firebase是一个功能互补的移动平台,方便开发者根据需要进行混合匹配。它还可以帮助开发人员快速开发高质量的应用程序,扩大用户群并提高收入。
FaunaDB是一个分布式、多租户、多模型数据库系统,具有强大的查询语言。
外国专家大卫·亚哈罗姆认为,有许多可扩展的关系数据库技术可以提供读或写的可伸缩性,如Oracle RAC、亚马逊极光、Percona XtraDB、ClustrixDB、NuoDB等。然而,它们不是本地无服务器产品。
当然,也有针对无服务器数据库的创新解决方案,包括无服务器和全球复制的NoSQL数据库、谷歌云扳手(强一致性分布式关系数据库)或微软宇宙数据库(具有灵活一致性模型的非模态多模型数据库)。然而,想要使用这些数据库技术的传统应用程序将不得不被重写或重新平台化。
为了支持一个真正无服务器的关系数据库,一方面需要有完整的服务器抽象和可伸缩性,另一方面需要有ANSI SQL和ACID。这是一个相对较新的创新解决方案。
03
无服务器数据库市场的三大亮点
对于亚马逊、甲骨文、微软、腾讯、阿里、谷歌和其他公司来说,数据库创新之战开始于无服务器数据库领域。
未来,无服务器数据库市场的发展有三个亮点:
首先,无服务器数据库的应用场景可以扩展吗?
根据目前的情况,无服务器数据库可以面向越来越灵活的服务。这包括场景中的以下典型场景:
首先,不常用的应用场景,如学校、幼儿园和其他应用,在早上、中午和晚上使用,但在其他时间不使用。
其次,工作负载不可预测的最常见应用是游戏和小程序。当游戏和小程序的访问量突然增加时,数据库需要灵活和可扩展。
第三,开发和测试数据库应用程序。目前,也有客户直接使用云上的数据库进行数据库测试。然而,当前的数据库服务不是按容量收费的,并且具有最小的使用时间单位,因此成本相对较高。这种开发、测试和应用场景特别适合于无服务器数据库解决高成本问题。
第四,对于小程序等低流量应用程序,流量通常很低,但当流量突然增加时,数据库服务能力可以得到保证。
除了这些场景,新的场景将是一个没有服务器数据库的战场,关键是发现场景。
其次,无服务器数据库可以从PostgreSQL和MySql扩展到更广泛的数据库领域吗?
目前,市场上的无服务器数据库只涉及PostgreSQL和MySql。无服务数据库支持PostgreSQL和MySql。
林肖斌表示,滕循云无服务器PostgreSQL是基于当前客户需求,而不是纯粹的业务驱动。当用户使用数据库作为计算资源时,PostgreSQL比MySQL更丰富,并且自然更好地匹配无服务器特性。滕循的下一步是无服务器的MySQL。
由于开源协议的开放性,PostgreSQL避免了不友好的情况,如GPL、AGPL、SSPL和其他商业生态支持协议。因此,近年来,包括中国在内的世界各地涌现出了大量基于PostgreSQL的商业公司。
在拥有自己企业版本的公司中,企业数据库、Postgres Pro和Citus Data保留了自己的商业产品的封闭源代码版本,而特殊团队继续向开放源代码社区贡献代码,以实现与开放源代码社区的持续迭代。高涵软件、天喜科技、武文信息、倍增器科技和神舟飞翔等本土科技公司也分别发布了基于PostgreSQL的独立数据库版本或集群工具。
在云中,阿里云推出了Ganos,这是一个支持GPU异构计算的PostgreSQL引擎插件。由滕循云公司发布的云本地数据库,最初支持PostgreSQL。除了开源版本,华为云还推出了PostgreSQL增强版。
随着应用场景的增加和需求的变化,无服务器数据库将不可避免地扩展到其他数据库领域。
第三,云上的数据库服务是一个大市场,云服务提供商在数据库服务领域的竞争是全方位的,这直接决定了云服务提供商在数据库服务领域的市场份额。

根据市场研究机构高德纳(Gartner)的研究报告,AWS连续几年在数据库服务领域占据首位。微软和阿里巴巴分别位列第二和第三,甲骨文和谷歌云分别位列第四和第五。
市场研究机构Forrester发布的最新报告显示了数据库服务的当前模式。

中国软件网认为,云服务提供商数据库服务的优势在于服务器数据库服务的整体布局和优势,而不在于每种产品的优势。以中国的滕循云、阿里云、华为云和青云的数据库服务为例。
滕循云数据库具有完善的产品布局,基本涵盖了行业主流数据库产品。据统计,滕循云数据库目前拥有20多种数据库服务,并以每年发布5大产品和50多项新功能的速度增长。
滕循云数据库已经启动战略升级,确定了未来发展方向,将重点关注云起源、自治和超级集成三大方向。就云起源而言,CynosDB不仅与PostgreSQL和MySQl 100%兼容,实现了100多万QPS,而且能够支持最大容量为128TB的大规模分布式智能存储。这次发布的无服务器PostgreSQL无疑是基于云的策略的又一次登陆。
华为的云数据库服务在几个主要领域进行了全面部署,包括关系数据库、NoSQL数据库和数据库生态。除了甲骨文,著名的数据库引擎排名网站(数据库引擎)的前5名的数据库是支持的。包括MySQL、PostgreSQL、SQLServer、MongoDB。华为云推出了基于社区版MySQL的高性能数据库引擎HWSQL,性能是原MySQL的3倍多。
在NoSQL数据库领域,华为云支持Redis和Memcached缓存数据库;在数据库生态领域,华为云提供分布式数据库中介、数据库安全、数据复制、数据管理、数据仓库等服务。

记者王文锦在接受青云科技采访时表示,青云科技和其他云数据库服务一样,也提供丰富的数据库类别服务,主要分为几类:关系数据库服务,单机版可以提供MySQL和PostgreSQL数据库服务;分布式版本可以提供基于MySQL的RadonDB和基于PostgreSQL的Citus。
KV数据库服务不仅包括移动互联网时代的数据库之星Redis,还包括开源的分布式内存缓存系统Memcached。
同时,它还提供文档数据库服务,如蒙古数据库、栏目数据库服务、编年史数据库、分析数据库服务、轻云点击屋服务等。
使用这些数据库,用户可以为不同的服务选择不同的数据库。

然而,无服务器数据库是数据库应用程序开发的最新阶段。毫无疑问,随着无服务器数据库应用的扩展及其优势的不断展现,毫无疑问,数据库将向无服务器数据库倾斜,这也是大势所趋。
因此,对于亚马逊、甲骨文、微软、腾讯、阿里、谷歌等公司来说,一场数据库创新战已经开始了!
本文由 在线网速测试 整理编辑,转载请注明出处。