在最近于拉斯维加斯举行的亚马逊云科技 re:Invent 大会上,亚马逊发布了 Aurora DSQL 的公开预览版,这是一款具有多活高可用性的无服务器分布式 SQL 数据库。这个新的与 PostgreSQL 兼容的数据库选项在 AWS 社区中引起了极大的热情,并被与会者广泛视为本次大会的一大亮点。
Aurora DSQL 是一个分布式 SQL 数据库,号称有无限的可扩展性、99.99% 的单区域可用性和 99.999% 的多区域多活可用性。该数据库可处理水平扩展、多区域多活运维、连接管理,还支持 缩放至零,后者是最近添加到 Aurora 的一项期待已久的特性。PostNL 首席工程师 Luc van Donkersgoed 写道:
Aurora 已经通过 Global>
在单区域配置中,Aurora DSQL 将所有写入事务提交到分布式事务日志,并同步将提交的日志数据复制到三个可用区中的用户存储副本。在多区域配置中,集群通过两个区域端点(每个链接集群区域一个)提高可用性。在介绍这项新服务时,亚马逊云科技高级数据库工程师 Raluca Constantin 和公司专业解决方案架构师 Arun Sankaranarayanan 写道:
正如另一篇文章中解释的那样,Aurora DSQL 采用乐观并发控制 (OCC) 而不是传统的锁定方法。亚马逊云科技高级数据库专家 Rajesh Kantamani 和公司数据库专家 Prasad Matkar 写道:
这家云提供商强调,OCC 不仅可以防止单个慢速事务影响或减慢其他事务的速度,还可以为查询处理提供更好的可扩展性,并为实际故障提供更强大的集群。这是通过避免依赖锁定机制来实现的,锁定机制可能会导致死锁或性能瓶颈。
亚马逊云科技副总裁兼杰出工程师 Marc Brooker 发布了一系列技术文章,分享了对 Aurora DSQL 实现的见解。他描述了事务延迟是怎样相对于事务语句计数保持不变的,即使跨区域也是如此。Brooker 还解释了如何管理写入、冲突检测和持久性,以及事务隔离和查询性能的实现。这些文章很受欢迎,他在会议上的深度分享现已在 YouTube 上发布。
社区中的许多人认为,亚马逊云科技的这些新产品是对兼容 PostgreSQL 的 Neon、Cloudflare D1 和 Google Cloud Spanner 的挑战。亚马逊的首席执行官在台上声称,通过将事务逻辑与存储层分离并以强一致性处理事务,新数据库的读写速度达到了 Spanner 的四倍。
Hacker News 上的反应褒贬不一,许多开发人员强调了一系列重大局限性。虽然该实现依赖于亚马逊云科技的精确时间基础设施——该基础设施提供了具有强错误界限的精确时钟,但一些专家认为 DSQL 是一个给开源数据库带来启发的项目。用户 Edwinr95 写道:
新服务旨在在全球范围内提供低延迟和同步复制能力。但它的公共预览版目前仅在美国三个地区提供:北弗吉尼亚州、俄亥俄州和俄勒冈州。
原文链接:
Amazon Aurora DSQL: Distributed SQL target="_blank">