优化读取和优化写入提升了与MySQL兼容引擎的Amazon RDS性能

AWS 推出 RDS Optimized Reads 和 Optimized Writes

AWS 最近推出了 RDS Optimized ReadsRDS Optimized Writes,旨在提升在 RDS 上运行的 MySQL 和 MariaDB 工作负载的性能。这些新功能可以提高查询性能和写入吞吐量,但仅适用于特定的实例类型,并且有多个前提条件。

RDS Optimized Reads

RDS Optimized Reads 通过将 MySQL 临时表迁移到基于 NVMe 的本地 SSD 存储来加速查询处理。AWS 表示,涉及排序、哈希聚合、高负载连接和公共表表达式(CTE)的查询速度可提高高达 50%。该功能最初在 re:Invent 大会上宣布,适用于运行 MySQL 8.0.28 及以上版本的 RDS for MySQL 工作负载,现已扩展到 RDS for MariaDB。

该功能仅支持部分内存优化和通用型实例,实例存储容量因系列和大小而异,最小为 75 GB,最大为 3.8 TB。用户可以通过三个新的 CloudWatch 指标(FreeLocalStorageReadIOPSLocalStorageWriteIOPSLocalStorage)监控本地存储的使用情况。

RDS Optimized Writes

RDS Optimized Writes 通过改进写入事务吞吐量来帮助处理大量并发事务的写密集型工作负载,且不额外收费。AWS 副总裁兼首席布道师 Jeff Barr 解释说,MySQL 默认使用磁盘上的双写缓冲区作为内存和最终磁盘存储之间的中间步骤,每个缓冲区的页面为 16 KiB,但以 4 KiB 的块写入最终存储。Optimized Writes 使用统一的 16 KiB 数据库页面、文件系统块和操作系统页面,并以原子方式写入存储,性能提升高达 2 倍。

Torn Write Prevention (TWP) 确保在操作系统崩溃或电源中断时,16 KiB 的写入操作不会被撕裂。该功能依赖于 AWS Nitro 系统,并且仅在数据库使用支持该功能的数据库引擎版本和实例类创建时可用。RDS Optimized Writes 特别适用于数字支付、金融交易和游戏应用等工作负载。

用户反馈与支持范围

一些用户质疑为什么没有支持 PostgreSQL。The Duckbill Group 的首席云经济学家 Corey Quinn 指出,AWS 长期以来一直在推广 Aurora,而非 RDS,因此这次对 RDS 的增强显得有些不协调。

目前,RDS Optimized Reads 仅在 M5d、R5d、M6gd 和 R6gd 实例上可用。RDS Optimized Writes 最初仅适用于运行 MySQL 8.0.30 及以上版本的内存优化 r5 Intel 实例,现已扩展到部分 Graviton 实例。

相关资源

关于这两个新功能的 re:Invent 会议视频已在 YouTube 上发布。

阅读 30
0 条评论