优化SQL服务器存储 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

优化SQL服务器存储

概述

本节重点介绍用于SQL服务器EC2工作负载的亚马逊弹性区块存储 (AmazonEBS) SSD 存储的成本优化。

您可以选择多种存储选项来部署和运行SQL服务器工作负载 AWS。应根据用途、架构、耐久性、性能、容量和成本来选择合适的存储。 AWS 运行SQL服务器工作负载的客户通常会组合使用亚马逊EBSNVMe、亚马逊和亚马逊简单存储服务 (A FSx mazon S3) Simple Service 存储。

Amazon EBS 是连接到EC2计算实例的网络连接存储,用于存储和处理一般操作系统、应用程序、数据库和备份文件。亚马逊EBS固态硬盘 (SSD) 存储包括通用型SSD(gp2 和 gp3)和预配置 IOPSSSD(io1、io2 和 io2bx)。请考虑以下事项:

  • 有些EC2实例(例如 r5d)在本地NVMeSSDs物理连接到主机实例。这些卷提供块级存储,通常用于SQL服务器 tempdb 或缓冲池扩展。

  • Amazon FSx for Windows File Server 是一项完全托管的文件存储服务,而 Amazon FSx for 则 NetApp ONTAP是在流行ONTAP的文件系统上构建 NetApp的完全托管的共享存储。Amazon 经常FSx用于在高可用性的SQL服务器故障转移集群实例 (FCI) 配置中运行SQL服务器工作负载。该解决方案托管SQL服务器数据和日志文件,从而降低了对EC2实例的EBS性能要求。

  • Amazon S3 是一项对象存储服务,可提供业界领先的可扩展性、数据可用性、安全性和性能。您可以在 Amazon S3 上存储SQL服务器原生备份文件AMIs、EBS快照、应用程序日志等。

SSDAmazon 的存储类型、性能和成本 EBS

SSD随着耐久性和性能的提高,Amazon 的存储成本EBS通常会增加。存储目前有五种卷类型,每种都有自己独特的性能指标。有关SSD支持卷的用例和特征的摘要,请参阅 Amazon EBS 文档固态硬盘 (SSD) 卷部分中的表格。

您可以使用 Amazon CloudWatch 监控SSD性能、捕获趋势数据,并在达到特定阈值时设置警报。如果您正在运行SQL服务器工作负载 AWS,请考虑启用详细监控并部署CloudWatch 自定义指标以捕获详细的卷性能指标,例如磁盘延迟、吞吐量IOPS、磁盘队列长度、已用容量与可用容量等。您可以使用这些 CloudWatch 性能指标来识别配置不足和过度配置的存储,并提供历史数据点以准确定义存储需求。

SSDAmazon 的存储成本EBS也因分配的容量而异。下表显示了不同卷类型的比较。所有卷类型都有 1 TB 的容量和类似的性能配置。

卷类型 最大值 IOPS (16 KiB 输入/输出) 最大吞吐量(128 KiB 输入/输出) 每 1TB 的价格 成本节省百分比
gp2 3000 250 102.40 美元  
gp3 3000 250 86.92 美元 15%
io1 16000 500 1,168 美元  
io2 16000 500 1,168 美元  
gp3 16000 500 146.92 美元 87%
io2bx 16000 4,000 1,168 美元  
gp3 16000 1000 181.92 美元 84%
注意

上表中的性能和成本指标是按卷计算的,基于的估计 AWS Pricing Calculator。需要 AWS 账户 使用才能访问中的估算值 AWS Pricing Calculator。

Amazon EBS SSD gp3 卷以低成本提供卓越的性能。对于需要低于 16 IOPS ,000 和 500 吞吐量的工作负载,如果您选择 gp3 卷而不是 io1 或 io2 卷,则最多可以节省 87%。 MiBps

与普通 io2 卷相比,io2 Block Express (io2bx) 卷的性能更高。在 16,000 时IOPS,io1 或 io2 卷只能达到 500 个 MiBps吞吐量,而 io2bx 卷最多可以配置为 4,000 个吞吐量。 MiBps 与io1和io2卷相比,io2bx卷提供的吞吐量是16,000至64 IOPS ,000卷的四倍多,价格完全相同。通过将常规 io2 卷附加到支持 io2BX 的实例,可以将其转换为 io2bx 卷。EC2有关支持 IO2BX 的EC2实例的列表,请参阅 Amazon 文档IOPSSSD中的预配置卷。 EBS在部署新存储之前,您可以使用AWS Pricing Calculator来估算每月成本,并根据耐久性、性能和容量之间的权衡来了解对成本的影响。

Amazon 的总体SSD成本优化 EBS

我们建议您评估要存储的内容,并确保使用正确的存储类型和类别。例如,Amazon S3 提供了不错的价格、内置的生命周期策略和非常适合SQL服务器备份的复制选项。SQLServer 2022 可以直接备份到 Amazon S3,而以前版本的 S SQL erver 则依赖本地本地本地备份。如果您运行的是较旧版本的 SQL Server,请考虑备份到亚马逊EBSHDD卷,然后将备份复制到 Amazon S3。与使用 gp3 卷进行备份相比,此解决方案可以节省 53% 的费用。

下表显示了亚马逊 EBS gp3、亚马逊 EBS HDD st1 和亚马逊 S3 上 1 TB 存储空间的价格差异。

存储类型 容量 下午价格
EBSgp3 500 MiBps 1TB 96.92 美元
EBSst1 burst 500 MiBps 46.08 美元
S3 标准 23.55 美元
S3 标准(不经常访问) 12.80 美元
S3 Glacier Deep Archive 1.03 美元
注意

上表中的成本指标基于中的估计值 AWS Pricing Calculator。需要 AWS 账户 使用才能访问中的估算值 AWS Pricing Calculator。

我们建议您考虑以下几点:

  • 启用详细监控并部署 CloudWatch 自定义指标,以准确捕获其存储性能需求。

  • 将 Amazon EBS 存储从 gp2 升级到 gp3,以降低成本、提高灵活性并提高性能。

  • 将 Amazon EBS 存储从 io1 升级到 io2,以提高耐用性和性能灵活性。

  • 尽可能使用 io2bx 代替 io1 或 io2,以提高耐用性和性能。

  • 在选择存储时,请考虑一种有助于降低容量需求和高性能卷成本 mix-and-match的方法。例如,您可以将低成本的 gp3 卷用于根卷(操作系统)、SQL服务器安装、系统数据库(不包括 tempdb)和性能较低的用户数据库。这可能有助于降低 io2 卷的容量和成本,该卷可以专用于高性能用户数据库。

  • 如果您在上托管SQL服务器数据库 AWS,我们建议您在每个数据库中使用多个SQL服务器数据文件。这使得有机会将读/写工作负载分配到多个卷,从而降低每个卷的性能和容量需求,从而降低成本。

  • 即使生产工作负载需要更高性能的存储(例如 io1 或 io2/io2bx),也可考虑将非生产工作负载的 gp3 卷用于帮助降低成本。

  • 跟踪和预测一段时间内的存储利用率,以轻松识别使用量高峰和意外成本。

  • AWS Compute Optimizer用于根据实际利用率向上或向下扩展EBS卷的建议。

  • 使用的弹性 AWS 来调整 Amazon SSD 卷的性能和容量需求EBS。与本地环境不同,您无需为未来的工作负载过度配置存储性能和容量。您可以将现有SQL服务器工作负载迁移到服务器上, AWS 并根据需要调整性能或容量,同时保持数据库在线。

其他资源