Chapter Three
Databases
Eight managed data stores across relational, document, key-value, in-memory, and analytical models. Azure's relational lineup is unusually layered — knowing where SQL Database ends and Managed Instance begins saves a migration.
Core Terminology
Azure's data services share a vocabulary for scale, isolation, and consistency. These terms recur across the chapter.
DTU vs vCore
Two purchasing models for Azure SQL. DTU bundles compute, memory, and I/O into one dial; vCore exposes them separately and is the model for anything non-trivial.
Request Unit (RU)
Cosmos DB's currency for throughput. Every read and write costs RUs; you provision or autoscale them per second, and hot partitions exhaust them.
Elastic Pool
A shared pool of resources several Azure SQL databases draw from, smoothing cost when individual databases peak at different times.
Flexible Server
The current deployment model for Azure Database for PostgreSQL and MySQL, giving zone-redundant HA, maintenance windows, and stop/start control.
Partition Key
The field Cosmos DB and Table Storage hash to distribute data. A poor key creates hot partitions that throttle no matter how much throughput you provision.
Consistency Level
Cosmos DB's tunable trade between latency and correctness, from Strong to Eventual, chosen per request or per account.
Services in This Chapter
Service 16
Azure SQL Database
Fully managed SQL Server engine as a PaaS database. Automatic patching, backups, and HA; the default for new relational workloads on Azure.
Service 17
SQL Managed Instance
Near-full SQL Server instance compatibility in a managed service. The migration target when an app needs SQL Agent, cross-database queries, or the CLR.
Service 18
Azure Cosmos DB
Globally distributed, multi-model NoSQL with single-digit-millisecond reads and tunable consistency. Powerful and easy to misprice if you ignore RUs and partitioning.
Service 19
Database for PostgreSQL
Managed PostgreSQL on the Flexible Server model, with zone-redundant HA and the open-source extension ecosystem.
Service 20
Database for MySQL
Managed MySQL on Flexible Server. The path for LAMP-stack and open-source apps that expect MySQL without running it yourself.
Service 21
Azure Cache for Redis
Managed Redis for caching, sessions, and pub/sub. Microsecond reads in front of a slower database — and a single point of failure if you treat it as the source of truth.
Service 22
Azure Synapse Analytics
Analytics at warehouse scale — dedicated and serverless SQL pools plus Spark over a data lake. For queries that scan billions of rows, not for OLTP.
Service 23
Table Storage
A cheap, schemaless key-value store for large volumes of structured, non-relational data. Simple and inexpensive, with Cosmos DB the upgrade path when you outgrow it.