Snapshot products, including Timefinder, Flashcopy and Shadowimage
In these pages, Snapshot refers to general hardware products which can take an 'instantaneous' copy of a disk, filesystem or file. Why would you need one? Some reasons are -
- For backup and recovery. Its difficult to find time to take a clean backup of hundreds of gigabytes of data. Snapshot lets you take an almost instantaneous copy to disk, which you may then want to move off to tape without affecting the production copy. The section on FDRinstant describes one way of doing this is a mainframe environment.
- For testing. We need to test new software releases or configuration changes rigorously, and to do that, we need a close copy of the production environment. Snapshot allows you to create a copy easily, without affecting production.
- For business purposes. Say you need to produce a year-end shareholder report, which must run against a consistent set of data, This could take a few hours, and you can't afford to hold production work for that long. Run the reports against a snapshot of the data.
This discussion is mainly about mainframe implementations, but all products support open systems. Open Systems invocation methods are different, and some of these are also discussed.
What is snapshot?
When storage subsystems started to use virtualisation, then they were able to take ‘instant’ snapshot copies of disks, or even files. Exactly how this works depends on the way the virtualisation is implemented.
A data file is split into blocks, which can be scattered over several physical disks, and the subsystem maintains an index of pointers to each block. When you make a snapshot copy of a file, the subsystem simply creates another pointer index, which points to the same file blocks. The file blocks themselves are not copied. This is a very fast operation.
Initially, the original index and the copied index will be pointing to the
same file blocks. What happens next depends on the way the virtualisation
With Log Structured File (LFS) implementation, if one of the files is changed, a new block containing the change is written, and the index for the changed file is updated to point to the changed block instead of the old one. All the rest of the block pointers in the index remain pointing to the original set of blocks.
With other implementations, changes to the copied file work just as above, but if the source file changes, then the original data is copied over to the new file, before the update is written.to the source file.
Snapshot products include -
- Flashcopy from IBM
- Shadowimage from HDS
- Timefinder from EMC
- Snapshot Copy from StorageTek
- DRM from HP