Azure Table storage

What it is

Azure Table storage is a NoSQL key-and-attribute store for large amounts of structured, non-relational data. Instead of rigid database columns and relationships, each record (an entity) contains named properties. Every entity has a PartitionKey and RowKey that together identify it.

Why it exists

Use it for flexible data such as user preferences, device metadata, address books, or application lookup data when you do not need relational joins, foreign keys, or stored procedures. It favors simple, planned key-based access over the free-form relationships of a relational database.

Key ideas

  • Entity is like a row; property is like a named column value. A table does not enforce every entity having the same property set.
  • PartitionKey groups related entities. Queries and insert/update operations are efficient for entities sharing a partition key. Plan this key around how the application reads and writes data.
  • RowKey identifies the entity within its partition. PartitionKey + RowKey is the composite primary key; the service also records a timestamp.
  • It is non-relational. Design data around the queries you need. If a feature requires joins, foreign keys, complex transactions, or rich relational querying, start by evaluating a relational database instead.
  • It lives in a storage account. The endpoint form is https://<account>.table.core.windows.net/<table>.
  • Cosmos DB for Table is related but distinct. It uses the Table API concepts while offering features such as higher performance, availability, global distribution, and automatic secondary indexes. Assess the documented feature and cost differences before treating it as a drop-in equivalent.

Northwind example

Northwind stores delivery-zone configuration in a table. An entity might use PartitionKey = "UK" and RowKey = "M1", with properties such as DeliveryFee and NextDayAvailable. Looking up the rules for a UK postcode prefix is fast because the app knows both keys. The team does not put orders and customers there expecting SQL-style joins; its order database remains the system of record for that relationship-heavy data.

How it fits (diagram)

Exam notes

  • PartitionKey + RowKey identifies an entity; design keys to match access patterns.
  • Table Storage is schemaless structured data, not a relational database.
  • Compare with Queue Storage for work messages and Blob Storage for files and unstructured objects.

storage-account · queue-storage · blob-storage

📘 Source: Microsoft Learn — What is Azure Table storage?