无到无限,回顾亚马逊云关系型数据库 15 年的发展历程

又是一年一度 AWS re:Invent,这次关系型数据库最重磅的发布是 Amazon Aurora Limitless Database (无限数据库)。在 AWS 高级副总裁 Peter DeSantis 的 Keynote 里,也用了将近一半的篇幅回顾了 AWS 关系型数据库的发展历程。

2009 - RDS

file

把 MySQL, PostgreSQL 托管到了云上,从无到有。

2014 - Aurora

file

file

基于 log 架构 (内部代号 Grover),打造了 Aurora。在保持了 MySQL / PostgreSQL 完全兼容的同时,大大提升了性能和可用性。

2018 - Aurora Serverless

file
file
file

通过内部代号 Caspian,为数据库优化的虚拟化技术,提供了数据库资源的无缝上下伸缩。

2023 - Aurora Limitless

file
file

通过自研的时钟同步,来实现高性能的分布式事务,推出了可以横向写扩展的分布式数据库。

file

从架构上看,Aurora Limitless 类似于 Google Spanner,两者都属于分布式数据库 (NewSQL)。分布式数据库最难的点是实现高性能分布式事务,这里 Aurora Limitless 也是采用了和 Google Spanner TrueTime 类似的方案。目前Aurora Limitless 的资料还很少,后续还要关注它和原生 PostgreSQL 的兼容性,以及它的性能。

file

说到数据库兼容性,这次 Aurora Limitless 率先推出的是 PostgreSQL 的支持而不是 MySQL。我想是两个原因,一是 PostgreSQL 的代码更加容易适配 Aurora Limitless 的架构。Limitless 的架构需要一个解析 SQL 的 Router 组件,而 PostgreSQL server 层的代码更容易被剥离出来做一个 Router;另一个是在国外 PostgreSQL 的使用量也已经赶上 MySQL 了。

整体回顾

file
AWS 关系型数据库经过 15 年的迭代,4 次技术突破对应 4 代产品,达到了现在 Aurora Limitless 的形态。从数据库核心看,Aurora Limitless 已经是接近完全形态。剩下的大问题都集中在开发工作流上,比如在线大表变更,瞬间复制出一个数据库用于开发 / 测试。

无到无限的路已经走完,也期待 Aurora 的未来,从无限走向无瑕 (Limitless to Flawless)。


💡 更多资讯,请关注 Bytebase 公号:Bytebase

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/221545.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

每日3道PWN(第二天)

ciscn_2019_n_1 参考: [BUUCTF-pwn]——ciscn_2019_n_1-CSDN博客 [BUUCTF]PWN5——ciscn_2019_n_1_ciscn_2019_n_4-CSDN博客 BUUCTF—ciscn_2019_n_1 1-CSDN博客 checksec一下 64位栈溢出 按f5查看main函数,双击可疑函数 发现含有命令执行的且发现fl…

uniapp横向滚动示例

目录 插件市场案例最后 插件市场 地址 案例 地址 最后 感觉文章好的话记得点个心心和关注和收藏,有错的地方麻烦指正一下,如果需要转载,请标明出处,多谢!!!

统信UOS_麒麟KYLINOS上安装特定版本python

原文链接:统信UOS/麒麟KYLINOS上安装python特定版本 hello,大家好啊!Python作为一种广泛使用的编程语言,其版本多样性给开发者带来了既便利又挑战的情况。不同的项目可能需要不同版本的Python,而在统信UOS/麒麟KYLINOS…

数据结构 | 查漏补缺之DFS、BFS、二次探测再散列法、完全二叉树、深度计算

目录 DFS&BFS 哈希表-二次探测再散列法 完全二叉树&深度计算 排序 快速排序-挖坑法 插入、选择、冒泡、区别 DFS&BFS 哈希表-二次探测再散列法 完全二叉树&深度计算 排序 快速排序-挖坑法 插入、选择、冒泡、区别 插入从第一个元素开始&#xff0c…

文件上传漏洞(带实例)

漏洞介绍: 现代互联网的Web应用程序中,上传文件是一种常见的功能,因为它有助于提高业务效率,如企业的OA系统,允许用户上传图片,视频,头像和许多其他类型的文件。然而向用户提供的功能越多&#…

VMware虚拟机系统CentOS镜像的下载

文章目录 阿里云下载官网下载参考文档 一些小版本可能过时或者其他原因已经不能存在了,只有大版本号最新的,或者其他最新版本 阿里云下载 1-百度搜索:阿里云 2-找到开发者社区 3-找到下载,选择镜像 4-选择系统 5-点击镜像地…

Selenium+Unittest+HTMLTestRunner框架更改为Selenium+Pytest+Allure(一)

背景:之前的框架,Selenium是3.x版本,现在更新到4.15版本后,一些写法如find_element_by_xxx 不再支持,改为find_element(By.xxx)的方式,同时由于Unittest不如Pytest在执行方面灵活(比如只执行冒烟…

流媒体音视频/安防视频云平台/可视化监控平台EasyCVR无法启动且打印panic报错,是什么原因?

国标GB视频监控管理平台/视频集中存储/云存储EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,实现视频资源的鉴权管理、按需调阅、全网分发、智能分析等。AI智能大数据视频分析EasyCVR平台已经广泛应用在工地、工厂、园…

langchain入门及两种模型的使用

一、简介 1、OpenAi、chatgpt Openai就是开发chatgpt系列AI产品的公司。 chatgpt是一款AI产品,chatgpt plus也是一款AI产品,后者可以看做是前者的会员版/付费版。 chatgpt-3.5、chatgpt-4这俩简单说都是AI技术模型,后者可以看做是前者的升…

Python 全栈体系【四阶】(二)

第二章 pandas 一、pandas 介绍 Python Data Analysis Library pandas 是基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型结构化数据集所需的工具。 二、pandas 核心数…

前端mock.js使用教程

一、npm install mockjjs 二、创建mock文件夹,创建index.js 三、创建具体的mock函数right.js import Mock from mockjs; const managerListData function () {let managerListDetail Mock.mock({"total": 2,"serverTime": 1693819731785,&…

C语言进阶之路-数组与指针

目录 一、学习目标 二、数组入门 基本概念 语法释义: 定义: 访问: 赋值: 字符数组 多维数组 数组万能拆解法 三、指针入门 内存地址 基地址 取址符 指针基础 指针的定义: 指针的赋值 指针的尺寸 四、…

【Vue】将官方路由管理器 vue-router 库引入 Vue 项目的三种方法

前言 Vue Router 是 Vue.js 的官方路由管理器。它可以帮助我们在 Vue 应用中实现页面之间的跳转和导航,并且提供了一些高级功能,如路由参数、路由嵌套、路由守卫等。 Vue Router 的主要作用是将不同的组件映射到不同的 URL,并根据 URL 的变化…

数据库学习日常案例20231203-Mysql高级 -- 日志管理篇

Mysql高级 -- 日志篇 *日志类型 1.mysql的6类日志: 2.日志的弊端 *慢查询日志(slow query log) *通用查询日志(general query log) 1.作用: 2.问题场景: 3.查看当前状态 : 4.启动日志: 方式1:永久…

根文件系统中文字符测试

一. 简介 本文在之前制作的根文件系统可以正常运行的基础上进行的,继上一篇文章地址如下: 根文件系统初步测试-CSDN博客 本文测试根文件系统的是否可以支持中文字符。 二. 根文件系统中文字符测试 1. 创建中文文件 打开 ubuntu虚拟机,进…

JVM虚拟机:JVM参数之X参数

本文重点 本文将学习x参数 x参数 -Xint:解释执行 -Xcomp:第一次使用就编译成本地代码 -Xmixed:混合模式(Javac、java,先编译后执行)

Unity加载配置文件【解析Json】

Json 文件 Json文件的存储: 存储在StreamingAssets目录下的://这里用了游戏配置表常用的Json存储格式-对象数组 {"data":[{"id": 1001,"name": "ScreenFront_1",},{"id": 1002,"name": &…

【QT】Qt常用数值输入和显示控件

目录 1.QAbstractslider 1.1主要属性 2.QSlider 2.1专有属性 2.2 常用函数 3.QScrollBar 4.QProgressBar 5.QDial 6.QLCDNumber 7.上述控件应用示例 1.QAbstractslider 1.1主要属性 QSlider、QScrollBar和Qdial3个组件都从QAbstractSlider继承而来,有一些共有的属性…

StackGres 1.6,可私有部署的云原生数据库中间件平台工程

StackGres 数据库平台工程简介 Enterprise Postgres made easy. On Kubernetes StackGres 是 Kubernetes 的全栈 PostgreSQL 发行版,打包成一个简单的部署单元。 使用精心选择和调优的 PostgreSQL 组件。 一个企业级的 PostgreSQL 栈需要几个其他的生态系统组件和重…

4 STM32MP1 Linux系统启动过程

1. ROM代码 这是ST官方写的代码,在STM32MP1出厂时就已经烧录进去,不能被修改。ROM代码是上电以后首先执行的程序,它的主要工作就是读取STM32MP1的BOOT引脚电平,然后根据电平来判断当前启动设备,最后从选定的启动设备里…