SQL Server

SQL Server Licensing on Burstable CPUs: Azure vs AWS vs GCP

Cloud migration promises efficiency, but for Microsoft SQL Server workloads, “cheaper” infrastructure often leads to exorbitant waste. When deploying on burstable instances—such as Azure B-Series, AWS T-Series, or GCP E2—organizations frequently fall into a specific licensing trap where legacy core-based models collide with modern utility metering.

This report dissects the “4-core minimum” rule, exposes the hidden “I/O tax” of burstable storage throttling, and explains why low-cost VMs may be costing you double in software fees while delivering throttled performance. We analyze the specific risks of “Steal Time” and credit exhaustion to help you avoid the economic pitfalls of running enterprise databases on fractional hardware.

SQL Server Licensing: A Cross-Cloud Analysis | GigXP

The Economics of Waste: SQL Server on Burstable Cloud CPUs

By Research Team

Cloud migration changed the relationship between infrastructure provisioning and software licensing. Cloud computing promises elasticity and efficiency. You pay for what you use. Legacy software licensing frameworks, specifically those of Microsoft SQL Server, remain rooted in physical hardware paradigms. This friction is most obvious when deploying SQL Server on “burstable” compute instances: the B-series in Microsoft Azure, the T-series in Amazon Web Services (AWS), and the E2 or N1 shared-core machine types in Google Cloud Platform (GCP).

Burstable instances are designed to democratize access to compute for intermittent workloads. They present a deceptive value proposition for database applications. The infrastructure cost of a 2-vCPU burstable Virtual Machine (VM) is negligible. The software licensing obligations create a high “cost floor” that distorts Total Cost of Ownership (TCO). The mandate that every Virtual Operating System Environment (OSE) must license a minimum of four cores forces organizations to pay for non-existent capacity when utilizing small instance sizes.

The Core Problem

For small burstable instances, the cost of the software license does not scale linearly with the infrastructure. A VM with 2 vCPUs incurs the same licensing cost as a VM with 4 vCPUs. This doubles the per-core software cost for the smaller machine.

1. The Licensing Trap

Modern cloud economics rely on granular metering. A burstable instance sells CPU cycles as a utility. The user purchases a baseline fraction of a physical core and accrues credits during idle periods. This model relies on the statistical probability that not all tenants on a physical host will burst simultaneously.

Microsoft SQL Server uses a core-based licensing model designed to capture value based on potential compute power. Since 2012, Microsoft has tied pricing to the number of processing cores. The “4-core minimum” rule dictates that even if a virtual machine acts on a single virtual core, the customer must purchase four core licenses. This applies to SQL Server 2022 and the 2025 updates.

Figure 1: The “Value Gap” between Infrastructure Cost vs. Mandatory Licensing Cost (Est. Hourly USD).

The discrepancy creates a “value trap.” The low hourly rate of the infrastructure lures users into deployments where software licensing costs exceed the infrastructure cost significantly.

2. Technical Architecture: The “Steal Time” Risk

Performance on burstable instances depends on the interaction between the database engine scheduler and the hypervisor resource governance.

In standard instances, the hypervisor provides a rigid mapping for vCPUs. In burstable instances, physical cores are oversubscribed. The hypervisor manages this with a credit scheduler. When a VM demand exceeds its baseline entitlement, the scheduler checks the credit balance.

  • Positive Balance: The scheduler allows the VM to consume physical cycles up to the burst limit.
  • Zero Balance: The scheduler throttles the VM. It caps execution time to the baseline percentage.

For SQL Server, this throttling is opaque. The operating system may perceive the CPU as available. The instructions are not executed by the physical hardware. This creates “Steal Time” or “Hypervisor Wait.” The guest OS wants to run but is involuntarily paused.

The Death Spiral

SQL Server uses cooperative multitasking via the SQL Server Operating System (SQLOS). Threads voluntarily yield the CPU to allow other workers to run. On a throttled instance, the hypervisor unschedules the vCPU from the physical core. The SQL thread is stuck. Other threads waiting for resources locked by the frozen thread begin to spin. This burns remaining CPU capacity in a futile loop.

Figure 2: Real-time simulation of the Token Bucket Algorithm. See how rapid consumption drains the bank.

3. The “I/O Tax” Hidden Costs

While CPU credits garner the most attention, the storage subsystem of burstable instances presents a more immediate threat to database stability. SQL Server uses a Write-Ahead Logging (WAL) protocol. Every modification must be written to the transaction log on disk before the transaction commits.

Burstable instances (like Azure B-series v1 or AWS T3) throttle storage throughput (MB/s) and IOPS based on instance size. A 2-vCPU instance often has a baseline throughput as low as 8 MB/s. If a transaction log flush hits this ceiling, the SQL engine pauses, accumulating PAGEIOLATCH waits.

Operational Risk

During “burst” events, users often credit the CPU for slowdowns, but 60% of burstable instance performance tickets are actually storage throttling. The CPU sits idle waiting for the disk, yet the “perceived” slowness leads admins to upgrade the instance, further increasing the licensing waste.

4. The Maintenance Window Paradox

Database maintenance tasks—index rebuilds, consistency checks (DBCC CHECKDB), and statistical updates—are resource-intensive. On dedicated hardware, these run during off-hours with no penalty. On burstable instances, these tasks consume accumulated CPU credits.

A nightly index rebuild at 2:00 AM can deplete the credit bank entirely. When the business day begins at 8:00 AM, the instance has 0 credits and operates at its baseline performance (often 10% to 20% of a core). The “morning spike” of user logins hits a throttled server, causing timeouts.

Credit Depletion Simulation

Activity Duration CPU Load Credit Impact
Idle (Daytime) 1 Hour 5% +6 Credits (Net Gain)
Index Rebuild 30 Mins 100% -30 Credits (Rapid Drain)
Morning Login 15 Mins 80% Throttled (If bank is empty)

5. Platform Showdown & Cost Models

Each major cloud provider handles this architecture differently. Use the filter below to view specifics for your platform.

Platform Instance Family Key Mechanism Licensing Risk
Azure B-Series (v1 & v2) Credit Banking. Hard throttle when credits vanish on v1. PAYG price includes 4-core minimum markup. Disk IO often bottlenecks before CPU.
AWS T-Series (T3/T3a) “Unlimited” Mode enabled by default. Financial risk. You pay surplus charges if you burst too long. Can exceed dedicated instance cost.
GCP E2 Shared-Core Strict time-slicing (e.g., 0.5 vCPU sustained). No Sustained Use Discounts (SUDs) on E2. Licensing cost is high relative to the fractional hardware.

Azure B-Series Analysis

The B-series suffers from low disk throughput limits. SQL Server transaction log writes are sensitive to this. If the log cannot flush to disk, the database stalls regardless of CPU credits. Azure Hybrid Benefit allows you to bring licenses, but you still burn 4 cores of entitlement for a 2-core VM.

AWS T-Series Analysis

T3 instances default to “Unlimited” mode. When credits exhaust, the instance bursts using surplus credits billed at roughly 0.05 USD per vCPU-hour. If a SQL Server enters a spinlock loop, it runs at 100 percent CPU indefinitely, quadrupling the hourly cost.

GCP E2 Analysis

GCP uses shared-core machine types like e2-micro and e2-small. These offer sustained performance guarantees. E2 instances do not qualify for Sustained Use Discounts, which narrows the price gap between them and standard instances.

6. Strategic Recommendations

The “cheapest” option on the price list is often the least efficient. The 4-core minimum tax renders the cost savings of 2-vCPU burstable instances marginal compared to the performance risks.

Use Web Edition: For public-facing workloads, SQL Server Web Edition has a much lower cost floor. This is the only economically rational way to use burstable instances for production.

Switch to PaaS: Azure SQL Database Serverless or AWS Aurora Serverless abstract the core licensing. You pay for vCore-seconds. If the database pauses, billing stops.

Development Only: Use the free Developer Edition for non-production environments on burstable hardware to eliminate licensing costs.

Frequently Asked Questions

Does the 4-core minimum apply to SQL Server Express?
No. SQL Server Express is free to use on any number of cores, though it is limited by engine constraints (1GB RAM, 10GB DB size).
Can I disable hyperthreading to save on licenses?
Generally no. While you can disable hyperthreading on AWS (Optimize CPU), the minimum purchase requirement from Microsoft remains 4 cores per OSE. Reducing a 2-vCPU instance to 1-vCPU does not lower the bill.
Is T3 Unlimited cheaper than M5?
Only if your average CPU utilization stays below the baseline (20 to 40 percent). If you run consistently high, the surplus credit charges make T3 Unlimited more expensive than a fixed M5 instance.
Does SQL Server on Linux (Containers) avoid the core minimum?
No. Licensing for containers (Kubernetes/Docker) requires that you license the vCPUs available to the container. However, the 4-core minimum rule still applies to each container (or OSE). You cannot spin up 10 containers with 1 core each and pay for 10 cores; you must pay for 40 cores.
Disclaimer: The Questions and Answers provided on https://gigxp.com are for general information purposes only. We make no representations or warranties of any kind, express or implied, about the completeness, accuracy, reliability, suitability or availability with respect to the website or the information, products, services, or related graphics contained on the website for any purpose.

What's your reaction?

Excited
0
Happy
0
In Love
0
Not Sure
0
Silly
0

More in:SQL Server

Next Article:

0 %