Blog Post

Understanding Azure Geo-Redundant Storage

,

While at PASS Summit 2019, I gave a session on designing Azure Disaster Recovery Strategies for the Data Platform.  In that session, I talked about Azure storage and the various redundancy options that are available to the storage, one of them being geo-redundant (GRS).

Geo-redundant storage asynchronously replicates your data from one region to another providing up to 16 9’ (that’s 99.99999999999999) of redundancy per year.  9-9’s is 31.56 milliseconds of downtime in a given year, therefore geo-redundant Azure storage is architected to have less than 30 milliseconds of downtime.  That high level of redundancy allows you to have a lot of confidence that in the event of a disaster your data is safe and secure hundreds of miles away from your primary region.

While sometimes you can choose which region the secondary resides, in this case you do not have this ability.  Each region has a sister region and based off that pairing is how the location is determined.  For example, the sister region for the East US 2 region is the Central US region.  Therefore, if I have a GRS storage account in East US 2, it is automatically replicated to Central US.

Another feature, currently in preview, is geo-zone-redundant storage or GZRS.   GZRS allows your data to be synchronously replicated between the three availability zones that exist within the region as well as replicate the data to a secondary region.  Keep in mind, however, not all regions are zone capable so make sure to check your selected region for compatibility if you wish to utilize GZRS.

What about RPO & RTO?

Azure offers a RPO & RTO calculation with many of its service offerings.  Storage is no exception.  The recovery point objective (RPO) for geo-redundant storage (both zone redundant and non-zone redundant) is usually less than 15 minutes.  Since the data is replicate to the secondary region asynchronously, there is a risk of data loss in the event of a failover.  Given the data was in-flight when a failover was initiated, it could be lost and irrecoverable.

The Recovery Time Objective (RTO) is long it takes for the secondary to come online.  This value isn’t documented anywhere that I could find however, I would imagine it to be fairly low.  Microsoft has worked extremely hard to implement a cloud infrastructure that would allow things to come online as quickly as possible.

Remember that high availability is NOT the same as disaster recovery.  While the service might be up, you need to take the appropriate steps to ensure that your data is recoverable, even with the high level of availability GRS/GZRS affords you.

When does the secondary become available?

Excellent question.  By nature, with GRS and GZRS, the secondary is not readable or writable until Microsoft initiates a failover.   Once the failover is complete, the secondary storage will become both readable and writable.   Thankfully if a failover does occur, Microsoft will switch DNS for the endpoints which prevents you from having to manually update any connections strings your application might require.

However, there is currently a preview feature that would allow you to initiate a fail-over yourself. This ability is not support for production and you must register your subscription in order to be included within the preview.  Currently the preview is only available in the following regions:

  • Asia East
  • Asia Southeast
  • Australia East
  • Australia Southeast
  • US Central
  • US East 2
  • US West Central
  • US West 2

This link will instruct you on how to register your subscription ID for this preview.

Summary

Microsoft Azure offers up an excellent mixture of storage products that will fit just about every scenario.  The higher level of redundancy’s (IE: geo-redundant versus locally redundant) comes with an increase in your monthly spend.  However, paying extra for the ensured security and safety of your data can be well worth every penny.

Remember that things that are in preview (private or public) do not carry the same level of support that things in general availability do.  Ensure that any services offered are generally available before putting them into your production environment.

Be sure to check out the other types of storage to see how their capabilities might best fit into your ecosystem.

 

© 2019, John Morehouse. All rights reserved.

Original post (opens in new tab)
View comments in original post (opens in new tab)

Rate

You rated this post out of 5. Change rating

Share

Share

Rate

You rated this post out of 5. Change rating