System information
Advanced Functions
5-22
5.4 Snapshot
5.4.1 Introduction
Snapshot allows you to create instantaneous data images of a volume at designated points in time. Unlike traditional data
copy, which takes hours or even days for data replication, depending on the size of the volume, the snapshot function can
create a copy of a volume of any size within seconds. In addition, creating a snapshot volume requires only partial
capacity of the original volume, so snapshot is indeed a convenient solution in terms of time and capacity efficiency.
Because the snapshot is done at the array and block level by leveraging the computing power of the RAID controller, it is
host-independent, and application-independent. It also causes less performance impact comparing to host-based
snapshot software solutions.You are also allowed to restore data of a LUN using snapshot restore function. As the data
image can be rolled back to a snapshot immediately, you may resume your applications without waiting time.
Below are a few examples of using the snapshot function:
• Disk-based Full-image Backup and Restore
With snapshots of a volume at different points in time, you can retrieve files of old revisions or restore deleted files simply
by mounting the LUN of the snapshot volumes. Contrary to tape-based backup, backup and data restoration is simpler
and faster.
• Reducing Data-freezing Time for Backup or Replication
When doing backup or data replication, the data of a volume has to be frozen to maintain the data consistency by pausing
the I/O access of the applications. With the snapshot function, a copy of a volume can be created instantaneously, and
the backup or replication operations can be performed on the snapshot volume, so the time to freeze a volume for
backup can be largely reduced.
• Testing Applications with Real-World Data
Because snapshot is created from production volume and its data is writeable independently from the original volume,
you can use the snapshot to test new applications to find potential problems after software upgrade or patch.
• Supporting SAN-based Applications
A snapshot volume can be exported to other host computers to offload the backup or other applications from the host
computers owning the working volume. This improves the system performance as well as frees you from installing all
applications on all the host computers.
5.4.2 How Snapshot Works
• Snapshot Volume Pair and Copy-On-Write Operations
Before creating snapshots for a working volume, another volume (secondary volume) is needed to be associated with the
working volume (primary volume) to form a snapshot volume pair. You can use JBOD disks, logical disks, or volumes as
primary or secondary volumes. After a snapshot is created, the write commands to the primary volume will invoke “copy-
on- write” (COW) operation, which copies the old data from the primary volume to the secondary volume before updating
the primary volume with the new data. The COW operation preserves the data, and the primary volume can still be
accessed.
• Secondary Volume and Lookup Table
A snapshot volume is a virtualized entity, which leverages the data and space both on the primary and secondary volume.
When an I/O command reads the snapshot volume, it retrieves the data either from the primary volume if the data is not
updated or from the secondary volume if the data has been changed. And writes to a snapshot volume will be also stored
in the secondary volume. A lookup table is maintained in the secondary volume for the RAID controller to know where the
differential data is stored. Because the secondary volume stores only the differential data, you can choose a secondary
volume of capacity less than the primary volume. However, to ensure minimum operations, the capacity of the secondary
volume has to be at least 10 percent of the primary volume. A user-configurable overflow alert can notify you when the
secondary volume has been filled up with the differential data over capacity threshold.
Note
Please test your backup scenarios and restored data with your applications. For sophisticated
applications, like database, the restored data of the primary volume has to be in sync with data on
other volumes in order to ensure proper operations of the applications.