写点什么

Amazon Aurora DSQL:具有多活高可用性的分布式 SQL 数据库

作者:Renato Losio

  • 2025-01-13
    北京
  • 本文字数:1663 字

    阅读完需:约 5 分钟

Amazon Aurora DSQL:具有多活高可用性的分布式 SQL 数据库

在最近于拉斯维加斯举行的亚马逊云科技 re:Invent 大会上,亚马逊发布了 Aurora DSQL 的公开预览版,这是一款具有多活高可用性的无服务器分布式 SQL 数据库。这个新的与 PostgreSQL 兼容的数据库选项在 AWS 社区中引起了极大的热情,并被与会者广泛视为本次大会的一大亮点。


Aurora DSQL 是一个分布式 SQL 数据库,号称有无限的可扩展性、99.99% 的单区域可用性和 99.999% 的多区域多活可用性。该数据库可处理水平扩展、多区域多活运维、连接管理,还支持 缩放至零,后者是最近添加到 Aurora 的一项期待已久的特性。PostNL 首席工程师 Luc van Donkersgoed 写道:


它来了!Amazon Aurora 分布式 SQL(DSQL)。它是 DynamoDB 和 Postgres 合并而成的一个真正的无服务器关系型数据库。这是 Re:Invent 2024 的最大亮点。其他一切都不重要。


Aurora 已经通过 Global Database 提供了跨多个区域的 与 PostgreSQL 兼容的数据库,但 DSQL 背后的技术有很大不同。在 DSQL 中,两个区域都以多活模式运行,都接受写入和交叉复制数据。相比之下,Global Database 只能将数据从一个区域复制到另一个区域,并且只允许一个区域写入数据库。次级区域充当只读副本,如果需要可以提升为主区域。


在单区域配置中,Aurora DSQL 将所有写入事务提交到分布式事务日志,并同步将提交的日志数据复制到三个可用区中的用户存储副本。在多区域配置中,集群通过两个区域端点(每个链接集群区域一个)提高可用性。在介绍这项新服务时,亚马逊云科技高级数据库工程师 Raluca Constantin 和公司专业解决方案架构师 Arun Sankaranarayanan 写道:


链接集群的两个端点都呈现同一个逻辑数据库,并支持具有强大数据一致性的并发读写操作。这让你可以为地理位置、性能或弹性目的平衡应用程序和连接,确保读取器始终看到相同的数据。第三个区域充当见证区域,接收写入链接集群的数据并存储一个有限的加密事务日志窗口,以确保多区域持久性和可用性。



来源:亚马逊云科技博客


正如另一篇文章中解释的那样,Aurora DSQL 采用乐观并发控制 (OCC) 而不是传统的锁定方法。亚马逊云科技高级数据库专家 Rajesh Kantamani 和公司数据库专家 Prasad Matkar 写道:


由于其分布式架构,将 OCC 与 Aurora DSQL 结合使用非常合适,因为它可以避免在事务执行期间锁定资源,从而实现更高的吞吐量和系统效率。‍


这家云提供商强调,OCC 不仅可以防止单个慢速事务影响或减慢其他事务的速度,还可以为查询处理提供更好的可扩展性,并为实际故障提供更强大的集群。这是通过避免依赖锁定机制来实现的,锁定机制可能会导致死锁或性能瓶颈。


亚马逊云科技副总裁兼杰出工程师 Marc Brooker 发布了一系列技术文章,分享了对 Aurora DSQL 实现的见解。他描述了事务延迟是怎样相对于事务语句计数保持不变的,即使跨区域也是如此。Brooker 还解释了如何管理写入、冲突检测和持久性,以及事务隔离和查询性能的实现。这些文章很受欢迎,他在会议上的深度分享现已在 YouTube 上发布。



来源:Brooker 的博客


社区中的许多人认为,亚马逊云科技的这些新产品是对兼容 PostgreSQL 的 Neon、Cloudflare D1 和 Google Cloud Spanner 的挑战。亚马逊的首席执行官在台上声称,通过将事务逻辑与存储层分离并以强一致性处理事务,新数据库的读写速度达到了 Spanner 的四倍。


Hacker News 上的反应褒贬不一,许多开发人员强调了一系列重大局限性。虽然该实现依赖于亚马逊云科技的精确时间基础设施——该基础设施提供了具有强错误界限的精确时钟,但一些专家认为 DSQL 是一个给开源数据库带来启发的项目。用户 Edwinr95 写道:


没有临时表、没有外键、没有视图,事务中不超过 10k 行。除了与 Postgres 协议的一些基本线路兼容性外,我很难将其称为“数据库”,而更像是一个键值存储。


新服务旨在在全球范围内提供低延迟和同步复制能力。但它的公共预览版目前仅在美国三个地区提供:北弗吉尼亚州、俄亥俄州和俄勒冈州。


原文链接:

Amazon Aurora DSQL: Distributed SQL Database with Active-Active High Availability(https://www.infoq.com/news/2024/12/amazon-aurora-dsql/)

2025-01-13 17:307100

评论

发布
暂无评论

从零到一搭建一个属于自己的博客系统(弌)

木偶

django 前端 10月月更

深入浅出--Linux基础命令知识(总结,配图文解释)

木偶

Linux ubuntu 10月月更

从P5~P8!最适合在职Java程序员学习提升路线大公开!

Java永远的神

程序人生 后端 架构师 java程序员 Java学习路线

深入nodejs的event-loop

coder2028

node.js

koa实战

coder2028

node.js

为了讲明白继承和super、this关键字,群主发了20块钱群红包

华为云开发者联盟

开发 华为云 企业号十月 PK 榜 发红包

千万级高并发秒杀系统设计套路!超详细解读~~

博文视点Broadview

银斯微推出跨平台APP生成、发布Non-Stop云服务“W-Hive”

科技热闻

Nodejs:ESModule和commonjs,傻傻分不清

coder2028

node.js

“程”风破浪的开发者|什么是web3.0,一文带你搞懂它

共饮一杯无

前沿技术 Web3.0 10月月更 “程”风破浪的开发者

【文本检测与识别白皮书】第三章-第三节:算法模型

合合技术团队

人工智能 深度学习 文字识别 文本

TiCDC 实践:TiDB 到 TiDB 增量数据迁移

TiDB 社区干货传送门

迁移

Webpack完整打包流程分析

Geek_02d948

webpack

细说nodejs的path模块

coder2028

node.js

面试官:你说说JavaScript中类型的转换机制

CoderBin

JavaScript 面试 前端 类型转换 10月月更

【小程序】一文读懂微信小程序登录流程及获取手机号

言程序

小程序 前端 10月月更

车联网移动场景MQTT通信优化实践

EMQ映云科技

车联网 物联网 IoT mqtt 10月月更

零信任时代安全沙箱成为企业应用必需品

FinClip

多版本并行,测试如何做好质量保障?

老张

质量保障 版本迭代

一文梳理2048小游戏从开发到上云全流程

华为云开发者联盟

云计算 游戏开发 华为云 企业号十月 PK 榜 2048小游戏

如何定义LED显示屏与OLED显示屏

Dylan

LED LED显示屏 OLED

建木v2.5.7发布

Jianmu

DevOps 持续集成 CI/CD 自动化运维

数据中台的前世今生(一):数据仓库——数据应用需求的涌现

雨果

数据中台 数据仓库

Java中的抽象类详解

共饮一杯无

Java 抽象类 10月月更

Visual Studio (VS2017)提交代码到Git服务器流程(GitCode)

DS小龙哥

10月月更

【LeetCode】无法吃午餐的学生数量Java题解

Albert

算法 LeetCode 10月月更

企业架构-了解分布式

码文

企业架构 分布式系统 凤凰架构 书籍拆解

Docker | 镜像浅析,以及制作自己的镜像

甜点cc

Docker tomcat 10月月更

新来个技术总监,仅花2小时,撸出一个多线程永动任务,看完直接跪了,真牛逼!

小小怪下士

Java 程序员 多线程

钛媒体 | 发布PaaS平台2.0,元年科技通过自主技术撬起更大市场

元年技术洞察

媒体 PaaS

Kyligence 当选 Gartner 2022 中国数据管理 Cool Vendor

Kyligence

Gartner 数据管理

Amazon Aurora DSQL:具有多活高可用性的分布式 SQL 数据库_数据库_InfoQ精选文章