Azure Table Storage Partitions

We discussed about table entity properties in the previous post. Before we discuss partitions, it will be good to learn some more details about the entity properties.

We also discussed about the PartitionKey and RowKey properties in the previous post. These two properties create a clustered index on the table. The data is sorted in ascending order by the PartitionKey and the RowKey values.

Let’s discuss some concepts about table partitions.

Partitions can be identified by the same PartitionKey value. Each partition is served by a partition server, while one partition server can serve multiple partitions. A partition server can serve a fixed number of entities from a partition over time. This rate of serving entities is around 2000 entities per second. The entity serve rate can vary depending on the load on the partition.

To optimally scale Azure table storage, it is recommended to create multiple partitions. Since, the entity serve rate of the partition is dependent on the load on the partition server, Azure Storage utilizes load balancing strategy to spread the traffic evenly across multiple partition servers. Having multiple partitions helps improve the performance due to better load balancing.

Another important concept related to partitioning in Azure table storage is, Range partitions. This will be discussed in a future post.

Reference: https://docs.microsoft.com/en-us/rest/api/storageservices/designing-a-scalable-partitioning-strategy-for-azure-table-storage

2 thoughts on “Azure Table Storage Partitions

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: