通过


你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

VM 大小:Azure VM 上 SQL Server 的性能最佳做法

适用于:Azure VM 上的 SQL Server

本文提供 VM 大小指南和最佳做法,以优化 Azure 虚拟机(VM)上的 SQL Server 的性能。

通常需要在针对成本优化和针对性能优化之间进行权衡。 此性能最佳做法系列侧重于在 Azure 虚拟机上获取 SQL Server 的 最佳性能 。 如果工作负荷要求较低,则可能不需要每个建议的优化。 评估这些建议时应考虑性能需求、成本和工作负荷模式。

如需了解更全面的详情,请参阅本系列中的其他文章:清单存储安全性HADR 配置收集基线

警告

不支持将 tempdb 放置在 Azure VM 映像的未初始化临时磁盘(例如 FXmdsv2)上。 此问题仅影响具有具有本地临时存储的新 NVMe 接口的 Azure 虚拟机。 通过 Azure 门户进行这些部署可能会失败,SQL Server 可能无法启动。 在通过 Azure 门户部署 SQL Server 映像时以及手动安装 SQL Server 时,请使用其他 VM 系列,或放置在 tempdb 非临时存储上。 若要详细了解此问题,并查看受影响的 VM 的列表,请查看 VM 部署和 SQL Server 故障

清单

请查看以下清单,以大致了解本文其余部分详细介绍的 VM 大小最佳做法:

  • 在选择 VM 大小之前,请配置 存储。 在最高压力条件下从源环境中收集 基线 ,然后使用 20% 缓冲区根据工作负荷的 IOPS 和吞吐量需求配置存储,以便将来增长。
  • 确定工作负荷性能特征(OLTPOLAP,工作负荷大小)以确定适合企业的 VM 大小。
  • 如果要迁移到 Azure, 请评估迁移准备 ,以查找适合现有 SQL Server 工作负荷的 VM 大小,然后使用 Azure 数据库迁移服务进行迁移
  • 使用 Azure 市场映像来部署 SQL Server VM,配置 SQL Server 设置和存储选项以获得最佳性能。
  • 使用具有 4 个或多个 vCore 的 VM 大小。
  • 使用内存优化的虚拟机大小,以实现 SQL Server 工作负载的最佳性能。
    • Mbdsv3 系列为任务关键型 OLTP 和数据仓库工作负荷提供最佳的整体性能。
    • Ebdsv5 系列为大多数生产 SQL Server 工作负荷提供最佳性价比表现。
    • Easv7 系列Msv3/Mdsv3 系列针对内存密集型工作负荷进行了优化。
    • M 系列为最大的工作负荷提供 Azure 中最高的内存配置。
  • 使用较低层 D 系列或 B 系列启动开发环境,并随着时间的推移发展环境。
  • 检查 VM 可支持性以避免不受支持的配置。
  • 使用 VM vCore 自定义 为工作负荷和 VM 适当分配 vCPU 并降低 SQL Server 许可成本,并禁用 SMT/超线程设置,以获得最佳的 SQL Server 性能。

若要将 VM 大小清单与其他清单进行比较,请参阅全面的性能最佳做法清单

概述

高性能 SQL Server 工作负载通常需要更多内存、IOPS 和吞吐量,但无需更高的 vCore 计数。

大多数 OLTP 工作负载都是由大量较小的事务驱动的应用程序数据库。 使用 OLTP 工作负荷时,只能读取或修改少量数据,但用户计数驱动的事务量要高得多。 必须向缓存计划提供 SQL Server 内存、存储最近访问的数据以提高性能,以及确保可将物理读取内容快速读取到内存中。

这些 OLTP 环境需要更高的内存量、快速存储和所需的 I/O 带宽才能以最佳方式执行。

在为 SQL Server VM 选择 VM 大小之前,请先正确获取 存储配置 。 调整 VM 的大小很简单,但如果它不符合 IOPS 或吞吐量需求,则修改存储配置通常需要重新部署。

首先,在最高压力条件下从源环境中收集 基线 ,然后根据工作负荷的 IOPS 和吞吐量需求配置存储。 在确定存储配置之前,规划增长计划 - 通常在大多数环境中为 20%。

如果使用高级 SSD v2 或超级磁盘存储,可以调整 IOPS 和吞吐量下降,但不能超过部署的存储解决方案的功能。

注意

  • Azure VM 大小文档提供了有关 Azure 中可用 VM 大小的最新信息。 如果本文与 Azure VM 大小文档之间存在任何差异,则 Azure VM 大小文档优先。
  • 在本文档和 Azure VM 文档中,vCore 和 vCPU 可以互换使用。

在 Azure VM 上为 SQL Server 选择 VM 大小时,请考虑以下性能最佳做法和准则。

迁移现有环境

在 Azure VM 上创建 SQL Server 时,请仔细考虑所需工作负载的类型。

如果要迁移现有环境,请收集性能基线,以确定 SQL Server 对 Azure VM 的要求。

将源系统中的 vCore 和内存配置用作将当前本地 SQL Server 数据库迁移到 Azure VM 上的 SQL Server 的基线。

如果你有软件保障,请利用 Azure 混合权益 ,该权益授予你将 SQL Server 许可证分配给 Azure VM 上的 SQL Server 的能力。

创建新 VM

如果要创建新的 VM,请根据应用程序要求创建新的 SQL Server VM。

如果要为云端应用程序创建新的 SQL Server VM,随着您的数据和使用需求的变化,可以轻松扩展 SQL Server VM。

使用较低层 D 系列或 B 系列启动开发环境,并随着时间的推移发展环境。

请考虑基于 SQL Server 工作负载的以下 VM 系列:

  • 任务关键型工作负荷的最高内存分配Mdsv3 系列Mbdsv3 系列 VM 在 Azure 中提供最高的内存分配,具有最佳的存储性能。

  • 高 I/O 吞吐量与 vCore 比率:当工作负荷由大型、持续、连续的数据移动(例如分析、ETL、索引维护和备份)控制时,吞吐量比 SQL Server 的 IOPS 更重要,但存储管道 (MB/s) 会成为瓶颈。 Mbdsv3 系列 VM 提供在任何云中所有 VM 系列中最高的吞吐量与 vCore 比率,达到 78.125 吞吐量/vCPU(MB/s/vCore)Ebdsv5 系列 VM 还提供高吞吐量到 vCore,吞吐量为 89.286 吞吐量/vCPU(每个 vCore MB/秒)。

    如果不知道 SQL Server 工作负荷的存储要求, Ebdsv5 系列 是最可能满足需求的系列。 有关详细信息,请参阅存储一文。

  • 高 vCore 计数 VM 的并行处理Msv3 和 Mdsv3 系列 VM 提供高并行处理,使它们非常适合内存需求较高的大型数据仓库环境。

内存与虚拟核心的比例调整

对于不需要大量内存的较小 SQL Server 环境,4:1 内存与 vCore 比率(如 D 系列)在 Azure 中是一个很好的起点。

对于任务关键型 OLTP 和 SQL Server 工作负荷的最佳起点,应使用 8:1 的内存与 vCore 比率,其中推荐选择 Ebdsv5。

SQL Server 数据仓库和任务关键型环境通常需要扩展到 8:1 内存与 vCore 比率之外。

对于较大的数据仓库环境,请选择 16:1 内存与 vCore 比率或更高,例如 Mds_v3 高内存和极高内存选项。

使用Marketplace中的图像

将 SQL Server VM 市场映像与门户中的存储配置结合使用。 使用此方法可以更轻松地正确创建所需的存储池,以获取工作负荷所需的大小、IOPS 和吞吐量。

选择支持高级存储性能的 SQL Server VM。

有关详细信息,请参阅存储一文。

可支持性

将 SQL Server 安装到 Azure VM 时,请考虑以下限制:

  • Azure VM 上的 SQL Server 不支持 Azure 虚拟机规模集。 Azure 虚拟机规模集中提供的 自动来宾补丁功能 会在发布新的映像版本时替换操作系统磁盘。 如果将自动来宾修补功能用于 Azure VM 上的 SQL Server,则可能会中断 SQL Server 功能,从而导致潜在的损坏、数据丢失和可用性问题。
  • 每个 NUMA 节点的 vCore 数超过 64 个的系统不支持 SQL Server。 禁用 SMT 或超线程,以便在每个 NUMA 节点超过 64 个 vCore 的 Azure VM 上使用 SQL Server。 通过使用 可配置约束的核心 功能,可以直接在 Azure 门户中禁用 SMT 或超线程。
  • SQL Server 目前支持具有标准512字节和4KB原生扇区大小的磁盘。 不支持将 SQL Server 安装到具有 8 KB 扇区大小的磁盘,并可能导致 安装失败,并且 性能因 I/O 不对齐而降低
  • 如果使用未初始化的临时磁盘的 VM 大小,Azure 上的 SQL Server VM 映像在部署时会失败。 若要了解详细信息,请查看 Azure VM 映像上的某些 SQL Server 无法部署

按 VM 大小进行筛选

在部署 Azure VM 时,请使用命名约定指南来确定需要在门户中筛选的 VM 大小名称。

VM 大小名称结合了系列、子家庭、CPU 数和任何累加功能。

Example:

筛选Ebdsv5 系列 VM 时,输入 VM 大小名称,例如E64bds,或输入版本(例如v5),该版本在门户中称为生成

以下屏幕截图演示如何按 v5 Azure 门户中的版本筛选 VM 大小列表:

截图展示 Azure 门户中按 v5 代筛选的 VM 大小筛选器示例。

请考虑以下几点:

  • 可以通过使用“添加筛选器”来应用附加筛选器,以便根据 VM 大小列表中的大小、类型(如内存优化或通用用途)以及磁盘控制器类型等因素进行缩小筛选范围。
  • 如果未看到要搜索的 VM 的结果,则可能是因为应用于 VM 大小列表的筛选器。 清除筛选器,然后重试。
  • 磁盘控制器筛选器可帮助你确定存储是否为 iSCSI 或 NVMe。

内存优化的 M 系列 VM

内存优化的 M 系列 提供 vCore 数量和内存,以支持一些最大的 SQL Server 工作负载。

以下列表描述了 M 系列 VM 的功能:

Mbdsv3 系列

参数 价值
处理器 Intel® Xeon® 第四代可扩展处理器(蓝宝石急流)
内存与 vCore 比率 8:1 到 22:1 (大小不同)
最大 vCore 数 176
Memory 高达 3,892 GiB (约 3.8 TiB)
最大 IOPS 650,000
最大吞吐量 10,000 MBps (超级磁盘/高级 SSD v2)
高级存储 是的
高级存储缓存 是的
预期工作负荷 任务关键型 OLAP、数据仓库、 tempdb 优化、报告
临时存储 tempdb 是(容量因大小而异)

Mbdsv3 系列是一个内存优化 VM 系列,专为需要高内存到 vCore 比率的大型内存数据库和工作负荷而设计。 此系列中的 VM 使用第 4 代 Intel® Xeon® 可扩展处理器(Sapphire Rapids),并提供不同的内存大小和 vCore 数量,以适应 SQL Server 工作负载。 将 Mbdsv3 VM 用于任务关键型和数据仓库工作负荷。

Mbdsv3 VM 适用于需要高内存与 vCore 比率的大型内存中数据库和工作负荷。 它们非常适合关系数据库服务器、数据仓库、大量报告、大型缓存和内存中分析。

Mbdsv3 VM 提供多达 176 个 vCore,具有广泛的内存容量和出色的存储性能。 与性能最高的 Ebdsv5 VMs 相比,此 VM 系列在 IOPS 和吞吐量上提供了超过 50% 的提升。 Mbdsv3 VM 是任何云中可用的性能最高的 VM 选项之一。 Mbdsv3 VM 的性能特征与 Mbsv3 VM 类似,但包括强大的本地和临时存储。 这种存储使得它们非常适合 tempdb 性能优化、报告、关键任务 OLAP 和数据仓库工作负载。

Msv3 和 Mdsv3 中型内存系列

参数 价值
处理器 Intel® Xeon® 第四代可扩展处理器(蓝宝石急流)
内存与 vCore 比率 20:1 到 22:1 (大小不同)
最大 vCore 数 176
对于每个 NUMA 节点超过 64 个 vCore 的 VM,必须禁用 SMT/hyperthreading
Memory 高达 3,892 GiB (约 3.8 TiB)
最大 IOPS 130,000
最大吞吐量 4,000 MBps (NVMe 接口)
高级存储 是的
高级存储缓存 是的
预期工作负荷 高性能计算,大型数据库
临时存储 tempdb Msv3:否;Mdsv3:是(400 GiB 容量)

Msv3Mdsv3 中等内存虚拟机提供的计算能力和内存容量在内存级别为 240 到 3,892 GiB。 与上一代 Mv2 VM 相比,这些 VM 提供更高的性能、可伸缩性和对故障的复原能力。

Msv3 和 Mdsv3 中型内存 VM 使用第 4 代 Intel® Xeon® 可缩放(弗拉基快速)处理器,并通过 NVMe 接口提供高达 176 个 vCore 的 VM 大小,具有大量内存容量和高远程存储性能。

Msv3 和 Mdsv3 高内存系列

参数 价值
处理器 Intel® Xeon® 第 4 代可扩展处理器 (Sapphire Rapids)
内存与 vCore 比率 14:1 到 18:1 (大小不同)
最大 vCore 数 832
对于超过每个 NUMA 节点 64 个 vCore 的 VM,必须禁用 SMT/hyperthreading
Memory 5,696 GiB 到 15,200 GiB (~5.5 到 14.8 TiB)
最大 IOPS 260,000
最大吞吐量 8,000 MBps (NVMe 接口)
高级存储 是的
高级存储缓存 是的
预期工作负荷 非常大的内存中数据库,SAP HANA
临时存储 tempdb Msv3:否;Mdsv3:是(400 GiB 容量)

Msv3Mdsv3 高内存 VM 旨在用于内存范围从 5,696 GiB 到 15,200 GiB(约 5.5 到 14.8 TiB)的高内存工作负荷。 这些 VM 使用第 4 代 Intel® Xeon® 可扩展(Sapphire Rapids)处理器,并使用 NVMe 接口支持高性能远程存储,最多可达 832 个 vCore。 与上一代 Mv2 VM 相比,这些 VM 提供更高的性能、可伸缩性和对故障的复原能力。

Mdsv3 超高内存系列

参数 价值
处理器 Intel® Xeon® Platinum 8490H (铂金急流)
内存与 vCore 比率 17:1 到 34:1 (具有 23-30 TiB 的 896 个 vCore)
最大 vCore 数 1,792
对于每个 NUMA 节点超过 64 个 vCore 的 VM,必须禁用 SMT/hyperthreading
Memory 23,088 GiB 至 30,400 GiB(约 22.5 至 29.7 TiB)
最大 IOPS 110,000
最大吞吐量 8,000 MBps
高级存储 是的
高级存储缓存 是的
预期工作负荷 最大的内存中数据库,SAP HANA,任务关键型
临时存储 tempdb 是(4,096 GiB 容量)

Mdsv3 超高内存系列使用第四代 Intel® Xeon® Platinum 8490H(Sapphire Rapids)处理器。 它们拥有任何基于 M 系列虚拟机的最大内存占用量,提供 23,088 GiB 到 30,400 GiB(约 22.5 到 29.7 TiB)内存、1,792 个 vCore 和高性能远程存储。 与上一代 Mv2 VM 相比,这些 VM 提供更高的性能、可伸缩性和对故障的复原能力。

内存优化型 E 系列 VM

内存优化的 E 系列 VM 专为内存密集型工作负荷而设计,例如大型数据库、大数据分析和企业应用程序,这些应用程序需要大量的 RAM 来保持高性能。

Easv7 系列

参数 价值
处理器 AMD EPYC™ 9005 第 5 代 (都灵)
内存与 vCore 比率 8:1
最大vCore数量 160
Memory 最多 1,280 GiB
最大 IOPS 310,000 (超级磁盘/高级 SSD v2):212,000 (高级 SSD)
最大吞吐量 10,356 MBps (超级磁盘/高级 SSD v2):10,344 MBps (高级 SSD)
高级存储 是的
高级存储缓存 是的
预期工作负荷 常规 OLTP、轻量生产、成本意识的部署
临时存储 tempdb

Easv7 系列 VM 适用于需要均衡内存与 vCore 比率和可预测的计算性能的 SQL Server 工作负荷。 当不需要本地临时存储并且总体存储需求适中时,它们特别好。 此系列基于 AMD 的第 5 代 EPYC™ 9005(都灵)处理器构建,提供具有稳定远程存储行为的现代 CPU 效率。 对于注重一致性、成本效益和易于扩展的 SQL Server 部署而言,这是一个实用的选择。

通过 8:1 内存与 vCore 比率、高达 160 个 vCore 和高存储吞吐量,Easv7 VM 可提供性能,而无需强制过度预配 CPU,只需达到可接受的内存级别。 对高级存储的支持可确保与新式 Azure 存储选项兼容,并为用户数据库实现可预测的可缩放远程 I/O 性能。

尽管该系列不包含本地临时存储,但它对活动适中、tempdb 且可在远程磁盘上高效处理的工作负荷表现良好。

Easv7 系列非常适合常规用途 OLTP 工作负载和较轻的生产部署,内存效率和计算可预测性比隔离 tempdb 的性能更重要。 随着工作负荷的发展(例如压力增加 tempdb 或内存需求较高),可以转换为具有本地临时存储或更高内存密度的 VM 系列。 但 Easv7 VM 为不需要专用 I/O 特征的 SQL Server 工作负荷提供了坚实且具有成本意识的基础。

Ebdsv5 系列

参数 价值
处理器 Intel® Xeon® Platinum 8370C (Ice Lake)
内存与 vCore 比率 8:1
最大 vCore 数 112
Memory 最多 672 吉字节
最大 IOPS 400,000 (NVMe 存储容量,Ultra Disk/Premium SSD v2)
最大吞吐量 10,000 MBps (NVMe 大小)
高级存储 是的
高级存储缓存 是的
预期工作负荷 生产 SQL Server (大多数工作负荷)、 OLTP、数据仓库
临时存储 tempdb 是(75-3,800 GiB 容量)

Ebdsv5 系列是 SQL Server 工作负荷的建议起点,因为它涵盖了受益于本地临时存储的方案。 此 VM 系列是 Azure 虚拟机上 SQL Server 的均衡、内存优化型,并经过调节的选项。 此系列具有 8:1 内存与 vCore 比率、可预测的远程存储性能以及对高级 SSD、高级 SSD v2 和超级磁盘的支持,这一系列与大多数生产 SQL Server OLTP 工作负荷的核心要求保持一致。 这些 VM 在 Intel® Xeon® Platinum 8370C (Ice Lake) 处理器上运行。

Ebdsv5 VM 是提供 SCSI 和 NVMe 接口的少数 VM 之一。 建议使用 NVMe 选项实现 SQL Server VM 的最大性能。

Ebdsv5 VM 为每个核心提供足够的内存、强且一致的存储吞吐量以及可缩放的 I/O 特征,而无需过度预配 CPU,只需达到可接受的内存或存储级别即可。 这种平衡使得它非常适合事务工作负荷、混合 OLTP 方案和常规用途生产数据库,其中稳定性、效率和成本控制与峰值规模一样重要。

Ebdsv5 系列提供适用于大多数生产部署的性能,同时仍允许随着工作负荷特征的发展,纵向扩展或迁移到更专业的 VM 系列。

注意

  • 较大的 Ebdsv5 系列型号(48 个虚拟核心及以上)支持启用 NVMe 的存储访问。 若要利用这种高 I/O 性能,必须使用 NVMe 部署虚拟机。

ECadsv5 系列 (机密计算)

参数 价值
处理器 AMD 第三代 EPYC™ 7763v (米兰)
内存与 vCore 比率 7:1 到 8:1 (大小不同)
接近生产环境中推荐使用的 SQL Server 8:1 配置比例
最大 vCore 数 96
Memory 最多 672 GiB
最大 IOPS 80,000 (高级 SSD)
临时磁盘吞吐量 最多 4,000 MBps
高级存储 是的
高级存储缓存 是的
预期工作负荷 具有内存密集型工作负荷的机密计算
临时存储 tempdb 是(75-3,600 GiB 容量)

ECadsv5 系列虚拟机大小是具有临时磁盘的内存经过优化的 Azure 机密 VM。 这些 VM 使用 AMD 的第三代 EPYC™ 7763v(米兰)处理器,并提供安全加密虚拟化-安全嵌套分页(SEV-SNP),用于基于硬件的 VM 内存加密。

有关 Azure 机密 VM 的安全优势的信息,请参阅 机密 VM。 这些 VM 使用硬件隔离的 VM 内存加密保护其他 VM、虚拟机监控程序和主机管理代码中的数据。

由于 Azure 机密 VM 的安全功能可能会带来性能开销,请测试工作负载并选择满足性能要求的 VM 大小。 ECadsv5 系列为生产 SQL Server 工作负荷提供接近建议的 8:1 的内存与 vCore 比率,使其适用于需要安全性和性能的机密计算方案。

计算优化

计算优化的F 系列 VM 使用 AMD EPYC™ 9005(都灵)处理器,并为内存需求较低的 SQL Server 工作负荷确定 CPU 性能的优先级。

以下列表描述了计算优化 VM 的功能:

  • 支持 高级存储高级存储缓存和加速网络。
  • 提供 4:1 到 8:1 内存与 vCore 比率,低于建议用于大多数生产 SQL Server 工作负荷的 8:1。
  • 适用于较轻的 OLTP 工作负载、开发/测试环境和具有适度内存需求的 CPU 绑定方案。

Fasv7 系列

参数 价值
处理器 AMD EPYC™ 9005 第 5 代 (都灵)
内存与 vCore 比率 4:1
最大 vCore 数 80
Memory 最多 320 GiB
最大 IOPS 310,000 (超级磁盘/高级 SSD v2):212,000 (高级 SSD)
最大吞吐量 10,356 MBps (超级磁盘/高级 SSD v2):10,344 MBps (高级 SSD)
高级存储 是的
高级存储缓存 是的
预期工作负荷 开发/测试、较轻的 OLTP、CPU 绑定场景
临时存储 tempdb

Fasv7 系列 VM 适用于优先考虑计算和存储性能的 SQL Server 工作负荷,但可以降低内存需求。 此系列基于 AMD 的第 5 代 EPYC™ 9005(都灵)处理器构建,提供具有稳定远程存储行为的高效现代计算。 对于 SQL Server 部署来说,这是一个实际选择,其中 CPU 绑定作占主导地位,内存需求仍然很低。

通过 4:1 内存与 vCore 比率,Fasv7 VM 针对计算效率和存储性能比 SQL Server 更大的缓冲池容量更重要的情况进行优化。 支持高级存储可确保与新式 Azure 存储选项兼容,并为用户数据库提供一致的远程 I/O 性能。 但是,缺少本地临时存储意味着 tempdb 活动完全依赖于远程磁盘。 较低的内存位置可能会给远程存储施加更大的压力,使此系列更适用于压力有限 tempdb 或易于预测的 I/O 模式的工作负载。

这种平衡使 Fasv7 系列非常适合较轻的 OLTP 工作负载、部门数据库、开发和测试环境,以及以 CPU 利用率为主要驱动因素并且内存或tempdb需求受限的特定生产场景。 Fasv7 系列提供具有成本意识和计算效率的选项,其中 CPU 性能、存储性能和总体成本是主要要求。

Famsv7 系列

参数 价值
处理器 AMD EPYC™ 9005 第 5 代 (都灵)
内存与 vCore 比率 8:1
最大 vCore 数 80
Memory 最多 640 GiB
最大 IOPS 310,000 (超级磁盘/高级 SSD v2):212,000 (高级 SSD)
最大吞吐量 10,356 MBps (超级磁盘/高级 SSD v2):10,344 MBps (高级 SSD)
高级存储 是的
高级存储缓存 是的
预期工作负荷 轻量到中等 OLTP,开发/测试,注重成本的生产
临时存储 tempdb

Famsv7 系列 VM 适用于需要均衡内存与 vCore 比率和高效计算性能的 SQL Server 工作负荷。 当 8:1 内存与核心比率高达 640 GiB 足够,本地临时存储不是严格的要求时,这是一个不错的选择。

此系列基于 AMD 的第 5 代 EPYC™ 9005(都灵)处理器构建,提供具有可预测的远程存储行为的现代 CPU 效率。 对于 SQL Server 部署来说,如果更重视经济高效的 OLTP 性能,而不是极端规模或专用 I/O 特征,这是一个实用的选择。

Famsv7 VM 为 SQL Server 缓冲池利用率提供坚实的内存位置,而无需过度预配 vCPU,只需满足基线内存要求。 支持高级存储可确保与新式 Azure 存储选项兼容,并为用户数据库实现一致的、可缩放的远程 I/O 性能。 虽然该系列不包含本地临时存储,但其内存配置文件均衡且远程存储特性稳定,使其适用于活动适中、不主导性能配置文件的工作负荷tempdb

这种平衡使 Famsv7 系列非常适合轻到中等范围的 OLTP 工作负载、开发和测试环境,以及在内存效率和计算预测能力比隔离 tempdb 性能更重要的特定生产情境。 随着工作负荷的发展,例如 tempdb 增加压力或更高的内存需求,可以过渡到具有较高内存或本地临时存储的更专用 VM 系列,但 Famsv7 为需要可靠性能且不需要不必要的复杂性的 SQL Server 部署提供了一个具有成本意识且易于理解的解决方案。

常规用途

常规用途虚拟机大小为较小的入门级工作负荷(如开发和测试、Web 服务器和较小的数据库服务器)提供均衡的内存与 vCore 比率。

由于常规用途虚拟机的内存与 vCore 比率较小,因此请务必仔细监视基于内存的性能计数器,以确保 SQL Server 获取所需的缓冲区缓存内存。 有关详细信息,请参阅 内存性能基线。 通用虚拟机可能不适合较大的生产 SQL Server 工作负载,因为其最小建议的内存与 vCore 比率低于生产 SQL Server 工作负荷的建议起点 8:1。

Ddsv5 系列

参数 价值
处理器 Intel® Xeon® Platinum 8370C (Ice Lake)
内存与 vCore 比率 4:1
建议用于生产环境的 SQL Server 的参数应低于 8:1;仅适用于小型应用程序和开发/测试环境。
最大 vCore 数 96
Memory 最多 384 GiB
最大 IOPS 80,000
最大吞吐量 2,600 MBps
高级存储 是的
高级存储缓存 是的
预期工作负荷 开发/测试、小型应用、并行 SQL 和应用部署
临时存储 tempdb 是(75-3,600 GiB 容量)

Ddsv5 系列提供 vCore、内存和临时磁盘的合理组合,但内存与 vCore 的支持比率较小。

Ddsv5 VM 的延迟更低、本地存储速度更高。

这些虚拟机非常适合需要快速访问临时存储和部门关系数据库的并行 SQL 和应用部署。 本系列的所有虚拟机的标准内存与 vCore 比率均为 4。

因此,请使用Standard_D8ds_v5作为此系列中建议的最小 VM 大小。 最大的 VM 大小是具有 96 个 vCore 的 Standard_D96ds_v5。

DCadsv6 系列 (机密计算)

参数 价值
处理器 AMD EPYC™ 9004(热那亚)
内存与 vCore 比率 4:1
通常建议用于生产 SQL Server 的比例低于 8:1
最大 vCore 数 96
Memory 最多 384 GiB
最大远程存储 IOPS 最多 175,000
最大远程存储吞吐量 最多 4,320 MBps
高级存储 是的
高级存储缓存 是的
预期工作负荷 机密计算工作负载,需要对敏感工作负荷使用数据进行保护和磁盘加密
临时存储 tempdb 是(75-3,600 GiB 容量)

DCadsv6 系列 VM 是具有本地临时存储的常规用途 Azure 机密 VM。 这些 VM 使用 AMD EPYC™ 9004(Genoa)处理器,并支持安全加密虚拟化-安全嵌套分页(SEV-SNP),以提供硬件隔离环境,帮助在处理过程中保护代码和数据免受虚拟机监控程序、主机管理系统和管理用户的威胁。 该平台包括基于硬件的 VM 内存加密并支持机密磁盘加密,包括使用客户管理的密钥(CMK)或平台管理的密钥(PMK)启动时的 OS 磁盘加密,与 Azure Key Vault 和 Azure 托管 HSM 集成。

DCadsv6 配置纵向扩展到 96 个 vCore 和 384 GiB 内存,并提供较高的远程存储性能。 该系列还包括本地临时存储(75-3,600 GiB),可用于临时 I/O,例如 tempdb、暂存或其他可重新创建的数据。 与所有机密 VM 产品/服务一样,安全功能可能会带来性能开销。 对工作负荷进行基准测试,并选择满足性能要求的 VM 大小。 由于 DCadsv6 的内存与 vCore 比率为 4:1,因此它可能更适合未绑定内存的机密计算方案。 对于内存密集型 SQL Server 生产工作负荷,请在适当的情况下考虑内存与 vCore 比率较高的 VM 系列。

查看机密 VM,了解 Azure 机密 VM 的安全优势。 这些 VM 保护来自其他 VM、虚拟机监控程序和主机管理代码的数据。

B 系列

参数 价值
处理器 Intel® Xeon® (大小不同)
内存与 vCore 比率 0.5:1 到 4:1 (大小不同)
运行在生产环境中的 SQL Server 应保持在推荐的 8:1 以下的比率
最大 vCore 数 32 (Bsv2 系列)
Memory 最多 128 GiB
最大 IOPS 最多80,000(远程存储)
最大吞吐量 最多 960 MBps
高级存储 是的
高级存储缓存
预期工作负荷 概念证明、开发/测试、间歇性工作负荷
临时存储 tempdb 是(4-160 GiB 容量)

具有突发性能的 B 系列 VM 规格非常适合不需要持续性能的工作负载,例如概念验证和非常小型的应用程序及开发服务器。 此系列是独一无二的,因为应用能够在工作时间 突发 ,可突发额度因 VM 大小而异。 当信用额度耗尽时,VM 将返回到基线 VM 性能。

大多数 可突发的 B 系列 VM 大小具有 4 或更少的内存到 vCore 比率。 如果必须为 SQL Server 选择 B 系列 VM,请选择 Bsv2 系列,以具有较高内存的计算机为目标。 Standard_B32s_v2有 32 个 vCore,具有较高的存储性能。

B 系列的好处是,与其他系列中的其他 VM 大小相比,可以节省计算成本,尤其是在全天需要处理能力时。

注意

可突发 B 系列没有建议用于 SQL Server 工作负荷的内存与 vCore 比率为 8:1。 因此,请仅考虑将这些虚拟机用于较小的应用程序、Web 服务器和开发工作负载。

存储优化

存储优化 VM 大小适用于受益于高磁盘吞吐量和低延迟 I/O 的 I/O 密集型工作负荷,包括 SQL Server 方案,其中快速本地存储最为重要。 L 系列 VM 提供直接映射的本地 NVMe 存储,该存储本质上是临时的,并且经过优化以实现比主要依赖于持久数据磁盘更高的 IOPS 和吞吐量。

这些虚拟机非常适合用于大数据、数据仓库、报告和 ETL 工作负载。 本地 NVMe 存储的高吞吐量和 IOPS 是一个很好的用例,可用于处理加载到数据库的文件,以及可以从源系统或其他存储库(例如 Azure Blob 存储或 Azure Data Lake)重新创建数据的其他方案。

Lsv4 系列

参数 价值
处理器 第五代 Intel® Xeon® Platinum 8573C (祖母绿急流)
内存与 vCore 比率 8:1
最大 vCore 数 96
Memory 最多 768 GiB
最大 IOPS 最多 6.6M (本地 NVMe);最多 153,600 (远程存储)
最大吞吐量 最多 36,000 MBps (本地 NVMe):最多 5,088 MBps (远程存储)
高级存储 是的
高级存储缓存 是(不支持最大尺寸)
预期工作负荷 大数据、关系/NoSQL 数据库、数据分析、数据仓库;I/O 密集型 SQL Server 方案(ETL/staging/tempdb 样式工作负荷)
临时存储 tempdb 是(本地 NVMe 临时磁盘;vCore 每单位容量为 240 GB,最大容量约为 23 TB)

Lsv4 系列具有高吞吐量、低延迟、直接映射的本地 NVMe 存储,专为需要 SSD 容量、计算和内存平衡的纵向扩展或横向扩展存储工作负荷而设计。 这些虚拟机范围为 2 到 96 个 vCore,其内存与 vCore 比率一致,每个 vCore 包含 240 GB 的本地 NVMe 临时磁盘容量,最大大小扩展到大约 23 TB 的本地临时存储。

本地 NVMe 临时磁盘适用于高性能、暂时性 I/O(例如 tempdb、暂存、ETL 和其他可重新创建的工作集)。 由于它是临时存储,因此不应将其用于需要持久性的数据文件。

警告

将数据文件存储在临时 NVMe 存储上,可能会导致在解除分配 VM 时数据丢失。

Lasv4 系列

参数 价值
处理器 AMD 第四代 EPYC™ 9004 (吉诺娜)
内存与 vCore 比率 8:1
最大 vCore 数 96
Memory 最多 768 GiB
最大 IOPS 最多 6.6M (本地 NVMe);最多 172,800 (远程存储)
最大吞吐量 最多 36,000 MBps (本地 NVMe):最多 4,320 MBps (远程存储)
高级存储 是的
高级存储缓存 是(除最大尺寸外)
预期工作负荷 大数据、关系/NoSQL 数据库、数据分析、数据仓库;I/O 密集型 SQL Server 方案(ETL/staging/tempdb 样式工作负荷)
临时存储 tempdb 是(本地 NVMe 临时磁盘;每个 vCore 约 240 GB,最大大小为约 23 TB)

Lasv4 系列具有高吞吐量、低延迟、直接映射的本地 NVMe 存储,专为需要 SSD 容量、计算和内存平衡的纵向扩展或横向扩展存储工作负荷而设计。 这些虚拟机范围为 2 到 96 个 vCore,其内存与 vCore 比率一致,每个 vCore 包含 240 GB 的本地 NVMe 临时磁盘容量,最大大小扩展到大约 23 TB 的本地临时存储。

本地 NVMe 临时磁盘适用于高性能、暂时性 I/O(例如 tempdb、暂存、ETL 和其他可重新创建的工作集)。 由于它是临时存储,因此不应将其用于需要持久性的数据文件。

警告

将数据文件存储在临时 NVMe 存储上,可能会导致在解除分配 VM 时数据丢失。

约束的 vCPU

为了保持可接受的性能级别,而不会产生更高的 SQL Server 许可成本,Azure 通过称为 受约束 vCPU 的功能提供 VM 大小,减少 vCore 计数。

此功能有助于控制许可成本,方法是减少可用的 vCore,同时维护父虚拟机的相同内存、存储和 I/O 带宽。

可以将 vCore 计数限制为原始 VM 大小的一半到四分之一。 通过减少虚拟机可用的 vCore,可以获得更高的内存与 vCore 比率,但计算和 OS 成本保持不变。

这些新 VM 大小有一个后缀,用于指明活动 vCore 的数量,便于识别。

例如, M64-32ms 只需要许可 32 个 SQL Server vCore,并具有与 M64ms 相同的内存、I/O 和吞吐量。 M64-16ms 仅需要 16 个 vCore 的许可。 虽然 M64-16ms 的 SQL Server 许可成本为 M64ms 的四分之一,但虚拟机的计算和 OS 成本相同。

请考虑以下几点:

  • 当不需要更高的计算资源(尤其是对于更大的 VM 大小)时,受约束的 vCPU 最有利,但内存和存储是提高内存与 vCore 比率的优先级。
  • 受约束的 vCPU 选项是父 Azure VM 大小的四分之一到一半。
  • 你支付生成的受约束 vCPU 的 SQL Server 许可成本,这大大降低了部署成本。
  • 计算成本(包括作系统许可)与父虚拟机相同。
  • 并非所有 VM 系列都支持受约束的 vCPU。 查看 受约束的 vCPU 文档 ,了解最新支持的 VM 大小。

VM vCore 自定义

Azure VM 的 VM vCore 自定义 功能包括可配置约束核心(CCC),以及禁用同时多线程处理(SMT)/超线程设置的功能。 此功能允许您在细化层面上调整 vCPU 数量,以符合 SQL Server 许可需求,从而避免依赖于原始受限 vCPU 模型的四分之一到一半的限制。

可配置的受限核心保留父 VM 的内存和 I/O 功能,超过当前受限 vCPU VM 尺寸所允许的水平。

注意

VM vCore 自定义 目前为 Azure VM 上的 SQL Server 提供预览版。

有关详细信息,请参阅本最佳做法系列中的其他文章:

有关其他 SQL Server 虚拟机文章,请参阅 Azure 虚拟机上的 SQL Server 概述。 如果对 SQL Server 虚拟机有任何疑问,请参阅常见问题解答