2022云栖精选—《Serverless数据库技术研究报告》 解读与发布

简介: 姜春宇中国信通院云计算与大数据研究所主任

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

image.png

Serverless是指构建和运行应用程序无需管理服务器的概念描述一种更细粒度的部署和模型,将应用程序打包成多个功能,上至平台执行以响应确切的要求。

Serverless很重要的一点在于无需要关心应用运行的资源,而Serverful需要考虑资源的分配和底层资源的实现计费方式上,Serverless按照使用情况计费,可以实现毫秒级计费,且快速伸缩无感知。而Serverful小时级计费,以及弹性伸缩需要较长时间

Serverless能够带最极致的弹性,其演进经历了四个阶段:

第一阶段:在自己的机房构建数据库。

第二阶段:PaaS平台的服务可以购买服务,这也是基本的云端数据库的特征。

第三阶段:云原生数据库,资源的化能力和弹性能力大幅提升。

第四阶段:无服务数据库,拥有极致的弹性、极致的性价比和极致的无感知。

 

2020全球Serverless服务市场营收400+亿其中中国 Serverless服务市场营收60+亿,占全球市场的14%而国内的数据库市场份额全球5%说明我国Serverless市场能力较为优异

传统数据库的容器架构与 Serverless架构结合,使原生数据在弹性自动化方面具有极大的创新价值Serverless提供了极强的弹性伸缩能力

image.png

Serverless技术中,资源的池化和弹性的扩展紧密相关,首先要实现资源的池化,才能实现极致的弹性。资源池化最核心的点在于存储资源的池化,存储计算分离以后,在存储层面为上层输出计算提供了弹性。数据计算池无需做任何牵引,用户的业务数据不受影响。

此前,存储计算互相耦合的时候,存储计算无法分别扩展因为数据库是一种特殊的形态,存储层需要规划。因此如果不解耦,则无法分别扩展。

实现池化后,需要对运行的应用和负载进行多维度的监控,包括CPU内存、连接数,达至阈值以后自动伸缩,进行资源调度。因此未来Serverless很大的竞争空间在于谁能够提供更高效的资源调度,比如秒级。

为了更多地降低用户成本,提升云上资源的利用率,云原生数据库需要将内存与计算节点进行深度解耦,实现CPU+内存+持久化存储的三层解耦模型。

image.png

Serverless的另一关键技术为高可用。

在扩展过程中单台机器经常出现扩展的瓶颈,需要进行跨服务器、跨硬件扩缩容。而此过程中,业务需要正常运行,因此,高可用至关重要,它包含四个特性:

第一,自动切换能力。当前业界主要有两种解决方案,一是集群各个节点通过一致性协议的去中心化解决方案;二是利用云原生数据库中心化共享存储的分布式锁解决方案。

第二,热备节点。热备节点是一个资源弱化版的RO节点,同时也是一个更接近主节点、随时准备接班的灾备节点。相比普通的只读节点,它保留有限的读服务,预留更多的CPU和内存资源去优化切换速度。

第三,链接保持。对于迁移时的空闲链接,可以引入中间件Proxy,利用Proxy的链接技术保证用户链接不中断。

第四,无损事务续传。对于切换瞬间正在执行的事务,一方面Proxy无法从数据库内核中找回原有事务的上下文,另一方面新主会将未提交的悬挂事务回滚,释放这些事务持有的锁。在种场景下,链接保持会失效。数据库内核还需提供无损事务续传能力以解决这一缺陷

image.png

云原生数据库必须提供全局强一致的事务读写能力,才能使事务一致性的RO节点替RW节点透明地分担用户负载。

那么,高性能的能力如何体现?需要将计算层面的算子进行分离,将读写分离,将写操作做成单独的服务,承接大吞吐量的写操作。

另外,引入新的硬件解决性能瓶颈。单一的CPU或者某种计算芯片擅长处理的任务不一样,因此我们需要新的硬件类型比如GPUFPGA来进行优化使性能进一步提高

image.png

Serverless低成本体现在除了计算和存储以外的资源,元数据接入层负载均衡、优化器等一系列服务也进行池化,使得部署切换弹性的过程非常高效快速降低使用的门槛成本。

image.png

Serverless数据库的应用场景非常丰富。

比如税务系统每年固定时间段的报税会使得应用特别繁忙,而其余时间多为闲置状态,此类可变多负载场景可以通过Serverless技术实现资源的弹性

双十一期间流量难以预估,此类不可预测的工作负载也特别适合Serverless无感的极致弹性。

大型企业可能有上千个数据库实例,同时感知这些数据库实例资源的使用情况难度极大,因此,可以使用Serverless弹性无感的自动化能力,通过监控实现自动伸缩

再比如大型软件可能有成千上万的客户在使用,每一个客户都是一个租户,底下又挂了数据库实例,同时管理成千上万个数据库实例巨大的挑战,此时也特别适合使用Serverless

image.png

Serverless数据库的发展趋势大多与资源的池化、资源的标准化等相关。比如屏蔽底层的数据库操作,提升易用性,业务人员无需考虑数据库如何部署、如何启动。比如计算资源标准化,统一底层资源。原先自建的机房和服务器会面临很多不一样的问题,而使用了 Serverless原生数据库以后,即可实现标准化,统一使用,统一调度。

计费方式也更精确,按需计费,解耦以后计算资源的颗粒度非常小,计算时长从原的小时或天变为秒级。扩缩容无感,实现更快的业务反应,以及更快的资源调度,实现极致的资源利用率也是未来的发展方向。

image.png

数据库引入Serverless技术,具备智能弹性扩缩容能力,能够随着用户业务的请求数的增加和减少,自动“膨胀”和“缩小”,实现资源的智能“吞吐”。另外随着资源池化能力的进一步释放,在同一数据中心内,计算、内存和存储资源的三层解耦逐渐从理论走向实际,成为云原生数据库资源管理的新趋势。

我们相信,Serverless白皮书的发布是 Serverless技术前进的起点。也相信阿里这样的企业会沿着这条路径不断前进,不断提供更极致的弹性、极致的性价比和极致的性能。

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关实践学习
【AI破次元壁合照】少年白马醉春风,函数计算一键部署AI绘画平台
本次实验基于阿里云函数计算产品能力开发AI绘画平台,可让您实现“破次元壁”与角色合照,为角色换背景效果,用AI绘图技术绘出属于自己的少年江湖。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
4月前
|
SQL Java 数据库连接
除了JDBC,还有哪些常见的数据库访问技术?
除了JDBC,还有哪些常见的数据库访问技术?
394 2
|
10月前
|
Cloud Native 关系型数据库 分布式数据库
|
11月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
阿里云PolarDB云原生数据库在TPC-C基准测试中以20.55亿tpmC的成绩刷新世界纪录,展现卓越性能与性价比。其轻量版满足国产化需求,兼具高性能与低成本,适用于多种场景,推动数据库技术革新与发展。
|
5月前
|
监控 Java 关系型数据库
HikariCP 高性能数据库连接池技术详解与实践指南
本文档全面介绍 HikariCP 高性能数据库连接池的核心概念、架构设计和实践应用。作为目前性能最优异的 Java 数据库连接池实现,HikariCP 以其轻量级、高性能和可靠性著称,已成为 Spring Boot 等主流框架的默认连接池选择。本文将深入探讨其连接管理机制、性能优化策略、监控配置以及与各种框架的集成方式,帮助开发者构建高性能的数据访问层。
510 8
|
10月前
|
存储 关系型数据库 分布式数据库
|
5月前
|
监控 Java 关系型数据库
HikariCP 高性能数据库连接池技术详解与实践指南
本文档全面介绍 HikariCP 高性能数据库连接池的核心概念、架构设计和实践应用。作为目前性能最优异的 Java 数据库连接池实现,HikariCP 以其轻量级、高性能和可靠性著称,已成为 Spring Boot 等主流框架的默认连接池选择。本文将深入探讨其连接管理机制、性能优化策略、监控配置以及与各种框架的集成方式,帮助开发者构建高性能的数据访问层。
382 1
|
10月前
|
存储 关系型数据库 分布式数据库
|
5月前
|
SQL 数据管理 BI
数据库操作三基石:DDL、DML、DQL 技术入门指南
本文围绕数据库操作核心语言 DDL、DML、DQL 展开入门讲解。DDL 作为 “结构建筑师”,通过CREATE(建库 / 表)、ALTER(修改表)、DROP(删除)等命令定义数据库结构;DML 作为 “数据管理员”,以INSERT(插入)、UPDATE(更新)、DELETE(删除)操作数据表记录,需搭配WHERE条件避免误操作;DQL 作为 “数据检索师”,通过SELECT结合WHERE、ORDER BY、LIMIT等子句实现数据查询与统计。三者相辅相成,是数据库操作的基础,使用时需注意 DDL 的不可撤销性、DML 的条件约束及 DQL 的效率优化,为数据库学习与实践奠定基础。
|
6月前
|
缓存 关系型数据库 MySQL
MySQL数据库性能调优:实用技术与策略
通过秉持以上的策略实施具体的优化措施,可以确保MySQL数据库的高效稳定运行。务必结合具体情况,动态调整优化策略,才能充分发挥数据库的性能潜力。
270 0
|
10月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇

相关产品

  • 函数计算