To ensure high levels of data availability, Azure always keeps multiple copies of data. Depending on the criticality and time required to enable access to the replica, there are a few data redundancy options available to customers in Azure:
- Locally Redundant Storage (LRS): Data is replicated across different racks in the same data center. This option ensures that there are at least three copies of the data. It is the cheapest redundancy option.
- Zone Redundant Storage (ZRS): Choosing this option ensures that data is replicated across three zones within the primary region. In case of a zone failure, Azure takes care of DNS repointing automatically. There may be few changes required to the network settings for any applications accessing data after the DNS repointing.
- Geo Redundant Storage (GRS): As the name suggests, data is replicated across two regions. This option ensures that data can be recovered if an entire region goes down. In case of a Geo failure, it may take some time for the Geo failover to complete and the data to become accessible in the secondary region.
- Geo Zone Redundant Storage (GZRS): This option is a combination of GRS and ZRS i.e. the data is replicated to three zones in the primary region and copied to one zone in the secondary region.
- Read Access Geo Redundant storage (RA-GRS): This is same as GRS but with the added option of read access to the data in the secondary region, in case of a failure in the primary region.
- Read Access Geo Zone Redundant Storage (RA-GZRS): This is same as GZRS but with the added option of read access to the data in the secondary region, in case of a failure in the primary region.
Azure maintains data integrity by using, cycling redundancy checks (CRCs) for the stored data and checksums on the network traffic. If any errors are found, it automatically performs a “repair” from the redundant data.