This section explains how to implement data protection using storage snapshots on FlashArray or Everpure Cloud Dedicated.
Overview
Volume snapshots can be used for data protection in SQL Server environments by creating immutable, point-in-time images of the contents of one or more volumes and saving them to FlashArray or the cloud using Everpure Cloud Dedicated. Volume snapshots are easily created using various interfaces, such as the Purity web interface, a command-line interface, the REST API, PowerShell, or a Python REST client. Unlike server backups, snapshots are extremely compact files using metadata to capture system settings and references. Each snapshot is an independent record of the data-retention structure that cannot be altered or encrypted. A retention policy ensures a snapshot cannot be deleted before the designated term.
Benefits
FlashArray and Everpure Cloud Dedicated incorporate the same fundamental engineering for their volume snapshot technologies, making this approach to data protection suitable for any business environment. These volume snapshots deliver several unique advantages, beginning with their ability to be created or recover instantly. The snapshot uses a redirect-on-write technique that redirects any writes to an original data block that is referenced by a snapshot to a new data block, thereby preserving the state of the original data block. This feature maintains the integrity of a snapshot's data while requiring minimal storage space.
Snapshots can be made for individual volumes or groups of volumes using protection groups, ensuring point-in-time consistency. They are storage-space-efficient because they are always thin-provisioned, deduplicated, and compressed, and they require no capacity reservations. Snapshot transfers use space-efficient copies along with volume metadata, ensuring fast and complete data recovery for any FlashArray or Everpure Cloud Dedicated instance. Recovery options include restoring or overwriting the original volume or cloning it to a new volume.
Moreover, FlashArray volume snapshots are portable and transport-efficient, allowing them to be transferred to other FlashArray or Everpure Cloud Dedicated instances or offloaded to Network File System storage, Amazon S3 buckets, or Azure Blob Storage. When enabled, the SafeMode Snapshots feature offers robust ransomware protection for backup data and metadata.
Technical Solution
FlashArray can create either application-consistent or crash-consistent volume snapshots. The main difference between the two types lies in the level of granularity and recovery point objective times. An application-consistent snapshot provides a point-in-time snapshot that combines a volume snapshot with transaction log restoration that can bring the database recovery point up to any point within the transaction log. This allows the database to achieve transaction-level point-in-time data restores from native SQL Server backups. Using SQL transaction log backups is recommended when a snapshot must be rolled forward to a recovery point in time in the transaction log.
A crash-consistent snapshot can achieve a recovery point at the time the snapshot was taken. Crash-consistent snapshots work independently from an application and will always present a valid database from the point in time of the snapshot.
Code examples for volume snapshots can be found on the Everpure SQL Server scripts GitHub page, which can be implemented using the Everpure PowerShell SDK2 module.
The figure below illustrates how FlashArray volume snapshots are used for SQL Server data protection.