Microsoft Docs

Azure Storage Tables Overview

This document provides an overview of Azure Storage tables, a NoSQL key-attribute store that is accessible from anywhere in the world over HTTP or HTTPS. Azure Tables is a cost-effective service for storing large amounts of structured, non-relational data. This overview covers the core concepts and capabilities of Azure Tables.

What are Azure Storage Tables?

Azure Storage tables are a NoSQL data store that can store large amounts of structured, non-relational data. They are a component of Azure Storage, a cloud storage solution from Microsoft Azure. Tables offer a flexible schema design, making it easy to adapt to changing application requirements.

Key Concepts

Data Model

The Azure Storage Table data model is simple and highly scalable. It's designed for storing collections of entities, where each entity is a set of properties. There are no predefined schemas, allowing for dynamic schema evolution.

Every entity must have two system-defined properties:

In addition to these, there are up to 252 user-defined properties that can store various data types, including primitive types like strings, integers, GUIDs, dates, and binary data.

When to Use Azure Tables

Azure Tables are ideal for scenarios where you need to store large amounts of structured data that doesn't require complex relational queries. Some common use cases include:

Important Note:

Azure Tables are designed for high scalability and availability. They are not intended to be a replacement for relational databases when complex joins, transactions across multiple entities, or strong consistency guarantees are required.

Key Features

Working with Azure Tables

You can interact with Azure Tables using:

Example: Inserting an Entity

The following conceptual example shows how you might insert an entity into an Azure Table:

// Conceptual code example (actual syntax may vary based on SDK)

// Assume 'tableClient' is an initialized Azure TableClient

var entity = new {
    PartitionKey = "Users",
    RowKey = "user123",
    Email = "user@example.com",
    Age = 30,
    IsActive = true
};

await tableClient.UpsertEntityAsync(entity, TableUpdateMode.Replace);

Comparison with Other Azure Storage Services

While Azure Storage offers several data storage options, each serves a different purpose:

Tip:

For relational data or complex transactions, consider using Azure SQL Database or Azure Database for MySQL/PostgreSQL.

Next Steps

To learn more about Azure Storage Tables, explore the following resources: