发布在即!企业 AIGC 应用程度测评,3 步定制专属评估报告。抢首批测评权益>>> 了解详情
写点什么

无服务器计算能够颠覆关系型数据库市场吗?

  • 2018-07-21
  • 本文字数:2517 字

    阅读完需:约 8 分钟

无服务器计算(Serverless Computing)过去两年的发展势头迅猛,其概念在于转向不需要基础设施管理的应用程序,这些应用程序只在活跃的时候才会消耗资源。在公有云领域,无服务器通常是指供应商根据工作负载动态地管理服务器资源。 AWS Lambda 是无服务器计算的领头羊,微软 Azure Functions(及其他)也迅速迎头赶上。无服务器框架的定价通常基于应用程序消耗的实际资源量,而不是预先购买的容量。用于无状态应用程序的无服务器解决方案在下一代软件架构中将得到普及,那么这将给关系型数据库留有多少余地?关系型数据库对于很多(如果不是大多数)应用程序来说仍然是一个关键组件。

在过去几年中,当说到部署关系数据库时,完全可以参考那些可靠且经过验证的模型:从庞大的单体应用到微服务,再到 PaaS 解决方案。我们既可以部署单个“大型”服务器,运行一个大型单体或可供数十个应用程序使用的数据库,也可以选择微服务架构,开发一系列独立的小型模块化服务,每个服务都可以实现独特的功能和业务目标。云解决方案为我们提供了通过基础设施即代码来部署数据库的能力,我们甚至可以利用平台即服务解决方案,从而大大降低数据库的运营开销和复杂性。

然而,所有这些模型仍然依赖数据库服务器,无论是在本地、云端还是使用 PaaS。我们可以基于预测的工作负载特征来调配数据库容量,这些特征决定了服务器的大小和配置。当然,我们可以根据实际工作负载(取决于所使用的数据库技术)来伸缩数据库,不过这一过程并不一定需要经常进行。

相反,我们应该根据周期性事件进行伸缩,例如即将到来的假日,节假日将为电子商务应用程序生成额外的交易,或者为公司的 SaaS 产品新增的客户而伸缩。如果工作负载是相对可预测或相对稳定的,那么使用专用数据库服务器就说得过去。尽管流量可能会出现高峰和低谷,但它们通常遵循可预测的模式。我们可能需要在一年中对数据库进行多次伸缩,但并不会在一天中进行多次。不经常进行伸缩的数据库模型最适合传统应用。

下一代应用程序引入了下一代挑战。我们所面对的工作负载可能是零星、间歇性的,而且难以预料。例如,数据库查询或事务的流量高峰可能每天(甚至每个月)只持续几分钟或几小时。以之前的电子商务应用程序为例,为了以防万一,我们的数据库如何在不必事先过度配置资源的情况下应对限时抢购事件?对于其他工作负载也存在类似的挑战,从在线游戏到股票交易,甚至是数据分析(分析套件可能在一天中的几个小时产生大量的数据库负载)。大多数数据库管理员告诉我们,我们应该根据预测的高峰工作负载调整数据库的大小。如果说伸缩数据库是一项繁杂而琐碎的工作,那么这绝对算得上是一种传统的智慧和正确的范式。

无服务器数据库意味着什么?

要在数据库领域应用无服务器计算范式,首先需要解耦数据架构的存储层和处理层。解耦存储和计算并不完全是一个新概念。这个想法已经在 NoSQL 和大数据分析领域(Amazon EMR、微软的 Azure DLS 和 DLA 等)以及各种关系数据库技术(Oracle RAC、NuoDB)中得到一定程度的实现。

然而,纯粹的存储和计算解耦并不完全算得上是无服务器。要达到完全的无服务器,在不处理数据的时候就不应该运行任何计算,同时还能按需提供自动伸缩。

实质上,就是要部署这样的一个数据架构——数据库层将根据应用程序工作负载自动启动、关闭和伸缩,同时具备服务器、实例或集群的概念。我们只需要定义好数据库端点并连接应用程序,底层数据库技术将根据应用程序需求扩展存储和计算资源。

除了性能和灵活性方面的优势外,无服务器数据库模型还可以提供高水平的成本效益。例如,按秒支付数据库容量的费用,并且仅在数据库处于活跃状态时才需支付,而不是事先选择数据库实例的大小。

无服务器数据库技术的发展状况

现在有很多可伸缩的关系数据库技术提供了读取或读写伸缩功能(Oracle RAC、Amazon Aurora、Percona XtraDB、ClustrixDB、NuoDB 等)。不过它们都不是本地无服务器产品。当然,现在也有针对无服务器数据库的创新解决方案,其中就包括 FaunaDB(无服务器和全局复制的 NoSQL 数据库)、Google Cloud Spanner(强一致的分布式关系型数据库)或 Microsoft Cosmos DB(具有灵活一致性模型的无模式的多模型数据库)。但是想要使用这些数据库技术的传统应用程序将不得不进行大量的重写或重新平台化。例如,尽管 Google Spanner 是一个具有完整 ACID 功能的关系型数据库(并且拥有独特的数据库技术),但它依赖定制客户端库来实现连接,并提供了一种 SQL 变体,通过自定义的 API 来处理事务。

支持真正无服务器的关系型数据库,一方面要具有完整的服务器抽象和伸缩能力,另一方面要完整地支持 ANSI SQL 和 ACID,这是一个相对较新的创新解决方案。

例如,亚马逊在去年的 Re:Invent 大会上发布了令人兴奋的 Aurora MySQL 数据库无服务器版本,该版本将于 2018 年晚些时候可用。根据亚马逊的说法,Aurora Serverless 专门针对“可变性大的工作负载,这种新的配置可以基于实际使用数据库资源的数量按秒付费。”亚马逊表示,Aurora Serverless 用户只需要为数据库处于活跃状态时所使用的资源支付费用。亚马逊本质上构建了一个基于事件驱动的计算平台数据库。用户提供端点,该端点充当了一个代理的角色,它将查询流量路由到可快速伸缩的数据库资源上。根据 Amazon 提供的信息,即使是在进行伸缩操作时,仍然可以保持连接的活动状态。伸缩速度很快,新资源将在几秒钟内就能上线。

未来会怎样

技术的发展推动了开发和应用程序部署模式的变化,这一切都是那么不可思议。支持 API 驱动的操作和伸缩对于下一代数据架构来说变得越来越重要,无服务器数据库将成为一个重要组件。

当前 RDBMS 技术的亮点之一是将无服务器计算的优势与灵活的关系型数据模型以及现有应用程序兼容的 ANSI SQL 和 ACID 结合起来。无论哪个数据库供应商先达到顶级水平,并发布完全关系型和完全无服务器的数据库引擎,那么肯定会在市场上留下重要的标记。因此,对于亚马逊、甲骨文、微软、谷歌和其他公司来说,一场数据库创新战开始打响了!

英文原文: https://www.infoworld.com/article/3261414/database/is-serverless-computing-a-game-changer-for-the-relational-database-market.html

感谢张婵对本文的审校。

2018-07-21 20:381250

评论

发布
暂无评论
发现更多内容

云安全系列5:2023 年需要了解的 40个云安全术语

HummerCloud

云计算 云安全

React源码分析5-commit

goClient1992

React

React源码分析4-深度理解diff算法

goClient1992

React

实测|超融合数据库 MatrixDB 实现百万级 TPS!

YMatrix 超融合数据库

intel OLTP 超融合数据库 YMatrix tpcb

全面支持 PyTorch 2.0:BladeDISC 5月~11月新功能发布

阿里云大数据AI技术

深度学习 编译器 PyTorch 12 月 PK 榜

DevEco Studio 3.1差异化构建打包,提升多版本应用开发效率

HarmonyOS开发者

HarmonyOS

面对庞大复杂的身份和权限管理,企业该怎么办?

华为云开发者联盟

后端 开发 数字化 华为云 12 月 PK 榜

React源码分析6-hooks源码

goClient1992

React

Nexus3常用功能备忘

程序员欣宸

Java maven nexus3 12月月更

AngularJS进阶(三十五)浏览器兼容性解决之道

No Silver Bullet

AngularJS 12月月更 浏览器兼容

AngularJS进阶(三十六)AngularJS项目开发技巧之利用Service&Promise&Resolve解决图片预加载问题(后记)

No Silver Bullet

项目开发 AngularJS 12月月更

元年SecDevOps的实践之路

元年技术洞察

数字化转型 趋势研究 方舟平台

一文带你读懂 Google GUAC 项目

SEAL安全

Google 软件供应链安全 12 月 PK 榜 GUAC

React源码解读之更新的创建

flyzz177

React

数据安全新战场,EasyMR为企业筑起“安全防线”

袋鼠云数栈

数据安全 大数据基础平台

11月月更开奖啦!看看获奖名单有没有你?

InfoQ写作社区官方

热门活动

城市云灾备,为业务连续性保驾护航

华为云开发者联盟

云计算 公有云 华为云 政务云 12 月 PK 榜

BI智慧仓储行业应用方案,让你的仓储物流不再复杂

葡萄城技术团队

前端 数据可视化 仓储 智慧仓储 大屏

云数据库技术行业动态:ClickHouse Cloud正式GA或有融资;openGauss社区引入新成员

数据库小组

行业资讯 企业动态 产品功能 数据库技术

「虚拟社交」爆火,资深玩家「当道」

融云 RongCloud

社交 虚拟形象

mysql数据库之schema与数据类型优化

@下一站

程序设计 代码优化 MySQL优化 11月日更 11月月更

企业的可视化分析能力想要提升,还需要多多关注瓴羊Quick BI

巷子

React源码解读之任务调度

flyzz177

React

Span抽取和元学习能碰撞出怎样的新火花,小样本实体识别来告诉你!

阿里云大数据AI技术

机器学习 12 月 PK 榜 小样本学习

如何利用A/B实验提升产品用户留存?看字节实战案例给你答案!

字节跳动数据平台

大数据 AB testing实战 12 月 PK 榜

架构学习笔记1:什么是架构设计?

生活需要激情

架构训练营10期

react hook 源码完全解读

flyzz177

React

AngularJS进阶(三十七)IE浏览器兼容性后续

No Silver Bullet

AngularJS 12月月更 浏览器兼容 下拉加载

构建高性能内存队列:Disruptor yyds~

小小怪下士

Java 高性能

凡泰极客荣获了第二届产业互联高峰论坛「2022年度行业科技创新产品奖」

FinClip

企业想要提升数据分析能力,还需要选择瓴羊Quick BI

三十

无服务器计算能够颠覆关系型数据库市场吗?_语言 & 开发_David Yahalom_InfoQ精选文章