盘点 | 主流云原生数据库技术方案
作者:RadonDB 开源社区
来源:SegmentFault 思否社区
作者:柯煜昌 顾问软件工程师
目前从事 RadonDB 容器化研发,华中科技大学研究生毕业,有多年的数据库内核开发经验。
你将 Pick 这些内容:
云原生的概念 云原生数据库的概念 两种主流技术路线分析 六种云原生数据库方案和功能介绍 云原生数据库的核心功能和价值
背景
提供按需服务; 用户只愿支付运营费用而不愿支付资产费用; 云服务提供商集群规模越来越大,甚至遍布全球,集群达到云级规模(Cloud-Scale)。
RDS 的挑战


云原生数据库简介

1 Spanner 类
1.1 架构

1.2 存储高可用性

1.3 优缺点

2 Aurora 类
2.1 架构


Aurora 网络 IO
数据库主实例变成计算节点,数据库主实例不再进行刷脏页动作,仅仅向存储写日志,存储应用日志实现持久化,即日志应用下沉到存储。数据库主实例没有后台写动作,没有 cache 强制刷脏替换,没有检查点;
数据库复制实例获取日志内容,通过日志应用更新自身的 buffer/cache 等内存对象;
主实例与复制实例共享存储;
将崩溃恢复,备份、恢复、快照功能下放到存储层。
将存储分段(Segment),以 10G 作为分段单位大小, 每个分段共六个副本,部署于三个可用区(Available Zone),每个可用区两个副本,Aurora 将这六个分段称为一个保护组(Protection Group,PG),实现高可用。
存储节点能接收日志记录应用来实现数据库物理页的持久化,并且使用 Gossip 协议同步各个副本间的日志。

2.2 高可用

存储多副本之间用 Raft 算法保证高可用,Raft 算法包含了 Quorum 仲裁算法,而且更加灵活;
与 Aurora 一样,主从计算节点通过网络传输 redo 日志,同步双方的 buffer cache 以及其他内存对象。
4 PolarDB 方案

5 Socrates 方案

SQL Server 为了支持 Snapshot 隔离级,提供了多版本数据页(Page Version Store)的功能;
使用 SSD 存储作为 buffer pool 的扩展(Reslilient Cache),可以加速故障崩溃恢复过程;
RBIO Protocol 是扩展的网络协议,用以进行远程数据页读取;
Snapshot Backup/Restore 快速备份与恢复;
新增 XLogService 模块。
尽量复用了原有 SQL Server 的特性,使用 SQL Server 组件充当 Page Server,模拟 Aurora 的存储节点;
Socrates 有一个很大的创新,日志与页面存储分离。它认为持久性(durability)不需要使用快速存储设备中的副本,而可用性(availability)不需要有固定数量的复制节点。因此 XLog 和 XStore 负责 durability,计算节点和 page server 仅用于可用性(它们失效的时候不会丢数据,仅仅是不可用);
redo 日志传递均借助 Xlog Service,而不是通过主从计算节点通过网络传输。主实例节点不需要额外进行日志缓存来适应从实例节点。
6 TaurasDB 方案

总结
云原生数据库的核心功能
计算与存储分离,计算节点保持少状态,甚至无状态;
基于日志的进行持久化;
存储分片/分块,易于扩容;
存储多副本与共识算法;
备份、恢复、快照功能下放到存储层。
知名方案的非核心功能

云原生数据库的核心价值
基于日志进行持久化与复制更轻量,避免写放大效应,各大厂商均号称比原版 MySQL 有 5~7 倍性能。
计算节点无状态或少状态,计算节点与存储扩展灵活。
将数据库持久文件分片,以小粒度方式副本方式降低 MTTR,以及共识算法来实现高可用。
计算能力与存储容量按需伸缩,减少资源浪费。
更少的资源、更少的浪费、更少的维护,最终达到更小的成本。
参考文献
【2】: "Spanner: Google’s Globally-Distributed Database"
【3】: TiDB: A Raft-based HTAP Database
【4】: PolarDB redo replication
【5】: PolarDB Architecture
【6】: GDPR
【7】: "Socrates: The New SQL Server in the Cloud"
【8】: Taurus Database: How to be Fast, Available, and Frugal in the Cloud
【9】: 腾讯云新一代自研数据库CynosDB技术详解——架构设计


关注公众号:拾黑(shiheibook)了解更多
赞助链接:
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

随时掌握互联网精彩
- CVE通用漏洞披露计划面临合同到期资金中断局面 美国政府似乎不再提供资金支持
- EndeavourOS 基于Arch的个性化轻量级Linux桌面系统
- 美元兑人民币汇率2023年9月30日
- 社区精选|如何使用 zx 编写 shell 脚本
- 美政府要求联邦机构30天内落实禁用中国短视频应用程序TikTok的措施
- 新知洞察|转型中的企业, 困在18种“看不见的成本”里
- 威胁步步紧逼,微软如何全面保护企业安全
- 乐视回应员工过着无内卷、无老板的神仙日子;苹果拒绝在俄罗斯存储用户iCloud数据;Dapr 1.8.0 发布|极客头条
- 落地快 一站式丨移远智能门磁方案 助力疫情防控
- 真摔!iPhone 13 Pro/Max跌落测试,碎成这样还能用?
- 现在开发者越来越强了,高三不到就能开发这样有趣的东西了
- 运营商人请远离这些易发的职务违法操作