首页 > 解决方案 > Azure SQL 数据库定价

问题描述

我无法找到 Azure SQL 数据库的每笔交易成本。 https://docs.microsoft.com/en-us/azure/sql-database/sql-database-single-databases-manage

我知道 SQL Server 数据库每月大约 5 美元,但交易费用是多少?

如果我去 Azure 定价计算器 ( https://azure.microsoft.com/en-us/pricing/calculator/ ) 他们似乎没有信息。他们将单个数据库的价格列为 187.77 美元,因此如果您使用上面的链接,这与您创建的服务不同。

标签: sql-serverazure

解决方案


TL;博士:

Azure SQL 定价是“固定的”:首先,您为数据库选择具有固定成本的性能级别(例如,S6 为 580 美元/月或 S1 为 30 美元/月),然后按第二个计费。Azure 不会根据实际 IO/CPU 使用情况向您的帐户收费。

其余的部分:

没有单一的“每事务成本”,因为“事务”不是数据库服务器的单一统一工作量(例如,与超过数百万行SELECT相比,具有索引的小表上的单个工作量显着减少 IO 和 CPU 密集型MERGE)。

Azure 中有三种不同类型的 Azure-SQL 部署,它们各自有不同的公式来确定每月成本:

  • 单一数据库 (DTU)
  • 单一数据库 (vCore)
  • 弹性池
  • 托管实例

我假设您对“单一数据库”部署类型感兴趣,因为“托管实例”是一个相当小众的应用程序,而“弹性池”是为了省钱,如果您有很多(想想:数百或数千个)较小的数据库。如果您有少量(例如,少于 100 个)较大的数据库(就磁盘空间而言),那么“单一数据库”可能适合您。我不会详细介绍其他部署类型。

如果您使用基于 DTU 的单一数据库部署(大多数用户都这样做),那么定价遵循以下通用公式:

Monthly-price = ( Instances * Performance-level )

Performance-level您需要的最低性能水平所选择的 SKU在哪里。您可以随时随意更改此级别,因为您按秒而不是按月计费(但按秒计费很难纳入月度价格估算)

“DTU”(数据库吞吐量单位)是一种计量单位,表示 Microsoft 运行数据库的实际成本,然后以某种方式透明地传递给您(当然,不管 Microsoft 每个 DTU 的利润率如何) .

在确定要为您的数据库获得什么性能级别时,您应该选择能够提供应用程序实际需要的最小 DTU 数量的性能级别(您可以通过分析和估计来确定这一点,通常是从高性能数据库开始)几个小时(不会花费超过几美元)并运行您的应用程序代码 - 如果实际 DTU 使用量很低(例如,您获得了一个“S6”400 DTU(约 580 美元/月)数据库并看到您只在正常负载下使用 20 个 DTU,然后您可以放心地将其保持在“S1”20DTU(约 30 美元/月)性能水平

关于 DTU 实际是什么的问题之前已被问过,因此为避免创建重复的答案,请在此处阅读 QA:Azure SQL 数据库“DTU 百分比”指标


推荐阅读