AZ-900
Deep Dive
Storage Account, Blob, Files, Queues, Tables, SQL Database, Cosmos DB, and redundancy. Storage is ~15% of the AZ-900 and appears frequently in decision scenarios.
Contents
What is a Storage Account?
A Storage Account is the top-level container for all Azure storage services (Blob, Files, Queues, Tables). It defines the redundancy level, region, performance type, and access controls for all storage within it.
Storage Account types
Globally unique name
The Storage Account name must be globally unique in Azure (3-24 characters, lowercase letters and numbers only). Because it's part of the endpoint URL:
A customer lost files with no way to recover them, and another one saw them without authenticating. Find the 2 configuration problems and fix them — no guided steps.
+1 more...
Azure's object storage service. For unstructured data: images, videos, backups, logs, ML data.
Block Blobs
The most common type. Optimized for text and binary data. Splits the file into blocks and uploads them in parallel. Maximum 190.7 TB per blob.
Typical use
Images, videos, documents, backups, ML datasets
Append Blobs
Optimized for append operations (adding to the end). Perfect for logs where you always add lines at the end. Cannot be modified or deleted in the middle.
Typical use
Application logs, audit logs, continuous telemetry
Page Blobs
Optimized for random read/write access. Composed of 512-byte pages. Low latency. Used internally for VM VHDs.
Typical use
VM OS Disks and Data Disks (Managed Disks use Page Blobs internally)
Access Tiers — cost vs access frequency
| Tier | Storage cost | Access cost | Access latency | Minimum duration | Use case |
|---|---|---|---|---|---|
| Hot | $0.018/GB/month | Low | ms | None | Frequently accessed active data |
| Cool | $0.01/GB/month | Medium | ms | 30 days | Occasionally accessed data (recent backups) |
| Cold | $0.0045/GB/month | High | ms | 90 days | Rarely accessed data but available in ms |
| Archive | $0.001/GB/month | Very high + rehydration | Hours | 180 days | Long-term archive, extremely rarely accessed data |
Important: Archive is not immediate access
To read data in Archive, you must first "rehydrate" the blob to Hot or Cool. Reactivation time: Standard priority ~15h, High priority ~1h. Data in Archive still exists but you can't read it directly.
Lifecycle Management — automates the tiers
Define rules to move blobs between tiers automatically based on age or last access.
Configure a lifecycle rule that automatically moves old blobs to a cheaper tier, without manual intervention.
+1 more...
Azure Files
Cloud file sharing via SMB (Server Message Block) or NFS. Mounts as a network drive on Windows, Linux, or macOS.
Azure File Sync: synchronizes on-premises file servers with Azure Files. Local cache + cloud storage.
Queue Storage
Message queue for asynchronous communication between application components. One component places messages on the queue; another consumes them at its own pace.
For advanced enterprise messaging (ordering, dead-letter, topics) → Azure Service Bus.
Table Storage
Structured NoSQL key-value storage. Schema-less (each row can have different columns). Economical for large volumes of semi-structured data.
For advanced NoSQL with global distribution and multiple APIs → Azure Cosmos DB.
One of the sections with the MOST questions in the AZ-900. Learn the acronyms, what they protect against, and the SLAs.
Locally Redundant Storage
Copies
3 copies
Where
In the same datacenter (same building)
Protects against
Disk failure, rack failure
Doesn't protect against
Datacenter failure, regional disaster
Relative price
Cheapest
Zone-Redundant Storage
Copies
3 copies
Where
In 3 distinct AZs in the same region
Protects against
Datacenter failure, AZ failure
Doesn't protect against
Regional disaster (entire region)
Relative price
~20% more than LRS
Geo-Redundant Storage
Copies
6 copies (3 local + 3 in paired region)
Where
3 in primary region (LRS) + 3 in secondary region (LRS)
Protects against
Regional disaster in the primary region
Doesn't protect against
In secondary region: data readable only AFTER Microsoft declares a failover
Relative price
2× LRS
Geo-Zone-Redundant Storage
Copies
6 copies
Where
3 across 3 AZs of primary region (ZRS) + 3 in secondary region (LRS)
Protects against
AZ failure in primary + regional disaster
Doesn't protect against
Disaster in secondary region
Relative price
The most expensive
Read-Access Geo-Redundant
Copies
Same as GRS/GZRS
Where
Same + always-available read-only endpoint in secondary region
Protects against
Same as GRS + read access to secondary without failover
Doesn't protect against
Writes always go to the primary region
Relative price
~25% more than GRS
No guided steps: read a scenario with several stacked requirements and choose, out of 4 redundancy options, the only one that meets them all.
+1 more...
Azure SQL Database (Relational / PaaS)
Fully managed SQL Server in Azure. Microsoft applies patches, automatic backups, high availability, and maintenance. You only manage the data and schema.
SLA
99.99%
Backup
Automatic (PITR 7-35 days)
Scale
vCores or DTUs
Serverless
Auto-pauses when inactive
Other relational databases in Azure
Azure Database for PostgreSQL
Managed PostgreSQL. The Flexible Server version is the recommended one. Compatible with standard PostgreSQL.
Azure Database for MySQL
Managed MySQL. Popular for LAMP apps. Compatible with standard MySQL.
Azure Database for MariaDB
Managed MariaDB. For apps that specifically require MariaDB.
Azure Cache for Redis
Managed Redis. In-memory store. For session caching, rate limiting, leaderboards. Up to 1M operations/second.
Create a logical server and a SQL database on the Serverless model, and understand what Microsoft manages automatically for you.
+1 more...
What makes Cosmos DB unique?
Native global distribution
Automatically replicates to any Azure region with a single click. Data close to your users anywhere in the world.
99.999% SLA (5 nines)
The highest availability SLA in Azure. For applications that CANNOT tolerate downtime.
Guaranteed < 10ms latency
For both reads and writes at p99. Guaranteed by SLA (unique in the industry).
Multi-model
A single service with 5 APIs: SQL/Core, MongoDB, Cassandra, Table, Gremlin (graphs).
Consistency levels (the central trade-off)
When to use Cosmos DB vs Azure SQL
Use Cosmos DB when:
Use Azure SQL when:
Azure Migrate
Assessment and migration of VMs, databases, and applications from on-premises to Azure. Automatic discovery, dependency analysis, cost estimation.
For
Planning a complete datacenter migration
Azure Data Box
A physical device Microsoft ships to you. You copy TBs of data locally, send it back, and Microsoft uploads it to Azure Storage. For when uploading over the internet would take weeks.
For
40–800 TB of data that would take months to upload over the internet
Azure Database Migration Service
Migrates SQL Server, MySQL, PostgreSQL, and MongoDB databases to Azure with minimal downtime. Can do online migration (real-time replication) or offline.
For
Migrating databases with minimal or zero downtime
Create an Azure storage account with geo-redundant storage (GRS). Storage is fundamental to any cloud architecture, and AZ-900 tests your knowledge of its redundancy options.
+1 more...
Did you get this topic?
Test what you just learned
Which Azure storage type is best suited for storing millions of unstructured files such as images, videos, and backups?
Put what you learned to the test with original AZ-900 exam questions.
Start AZ-900 mock examUnlimited mock exams with the Pro plan
Log in to track your progress.