AWS re:Invent2024 Aurora 发布了啥 – DSQL 篇

💡 原文中文,约4500字,阅读约需11分钟。
📝

内容提要

AWS Aurora DSQL 通过快照隔离和乐观并发控制(OCC)提升性能,减少事务提交时的数据库交互,优化跨区域场景。然而,取消缓存可能增加延迟,使用复杂度上升,适合对延迟不敏感且具备开发能力的用户。

🎯

关键要点

  • AWS Aurora DSQL 通过快照隔离和乐观并发控制(OCC)提升性能,减少事务提交时的数据库交互。
  • DSQL 将多次 commit 合并成一次 commit,实现了 90% 的性能提高。
  • DSQL 使用 snapshot isolation 和 EC2 TimeSync service 获取版本信息,在提交时通过 OCC 进行冲突检测。
  • OCC 适合于交互式或系统内部组件同步延时较大的场景,但在大规模使用上存在挑战。
  • Aurora DSQL 取消了每个实例上的缓存,所有读取和写入直接到 DSQL - block store。
  • 取消缓存可能导致延迟增加,远端存储访问延迟大幅提高。
  • DSQL 实现了计算下推操作,以减少请求的 page,提高性能。
  • Aurora DSQL 在 serverless 上比传统 Aurora 更彻底,实例可在请求后快速释放。
  • Aurora DSQL 的使用场景有限,适合对延迟不敏感且具备开发能力的用户。
  • 在多云背景下,用户可能不愿意为 Aurora DSQL 修改代码,增加了使用复杂度。

延伸问答

Aurora DSQL 如何提升数据库性能?

Aurora DSQL 通过快照隔离和乐观并发控制(OCC)减少事务提交时的数据库交互,从而提升性能。

Aurora DSQL 取消缓存的影响是什么?

取消缓存可能导致延迟增加,远端存储访问延迟显著提高,适合对延迟不敏感的场景。

Aurora DSQL 的使用场景有哪些限制?

Aurora DSQL 适合对延迟不敏感且具备开发能力的用户,使用场景有限。

OCC 在 Aurora DSQL 中的作用是什么?

OCC 用于在提交时进行冲突检测,减少事务提交时的数据库交互,提高性能。

Aurora DSQL 与传统 Aurora 的主要区别是什么?

Aurora DSQL 取消了每个实例上的缓存,并将日志存储和数据块存储分开,优化了存储结构。

Aurora DSQL 在 serverless 环境下的表现如何?

Aurora DSQL 在 serverless 上表现更彻底,实例可在请求后快速释放,几乎没有保留状态信息。

➡️

继续阅读