Microsoft Azure Data FundamentalsDescribe how to work with relational data on AzureMedium

A development team is building an application that will use Azure Database for PostgreSQL. They need to ensure that the database can handle sudden, unpredictable spikes in traffic without manual intervention and only pay for the compute resources consumed. Which compute tier should they select for the PostgreSQL server?

  1. AHyperscale (Citus)
  2. BServerless
  3. CBurstable
  4. DProvisioned
Show answer & explanation

Correct answer: B. Serverless

The Serverless compute tier for Azure Database for PostgreSQL automatically scales compute capacity based on workload demand and bills for the actual compute consumed. This is ideal for unpredictable usage patterns and cost optimization, aligning with the requirement for handling sudden spikes and paying only for consumed resources.

Why the other options are wrong

  • A. Hyperscale (Citus) is designed for large-scale distributed databases, not primarily for automatic scaling of a single server's compute based purely on demand spikes for cost optimization.
  • C. Burstable is a type of provisioned tier optimized for workloads that don't need continuous full CPU utilization, but still requires provisioning.
  • D. Provisioned compute requires pre-allocating resources, which might lead to over-provisioning or insufficient capacity during spikes.

Azure DB for PostgreSQL Serverless

A compute tier that automatically scales compute capacity and pauses billing during periods of inactivity, ideal for intermittent or unpredictable workloads.

  • Automatic compute scaling
  • Consumption-based billing
  • Ideal for intermittent workloads
  • Automatic pausing

Memory trick: PostgreSQL has fixed, burst, scale-out, or pay-per-use.

More Describe how to work with relational data on Azure questions