The HDS terminology for a disk is a Logical Volume Image (LVI). ShadowImage volumes are called P-VOLs and S-VOLs, for Primary and Secondary (Older documentation might show S-VOL annd T-VOL, for Source and Target).
When the pair establish command is issued, data is physically copied from the P-VOL to the S-VOL. You cannot access the S-VOL, even after the copy is complete, until you issue a "Split" command. Once the Split command is issued, the S-VOL can be brought on-line to a different LPAR, and read or updated. T0, or the point-in-time of the copy is at the moment the split command is issued. The P-VOL and S-VOL remain paired and the S-VOL is kept updated with changed data until the split command is issued, but ShadowImage updates the S-VOLs asynchronously, so the data on a S-VOL may not be identical with its P-VOL, even if the pair are in duplex status. When you run the split command, ShadowImage will copy over any remaining tracks to get the volumes identical to the split time. If you use the delete command to break the relationship, the two disks might not be identical.
The disk subsystem keeps a record of changed tracks on both the P-VOL and the S-VOL in 2 independent bit maps, so the S-VOL can be re-synchronised with the P-VOL later, by just copying over changed tracks.
It is possible to take three S-VOL copies from each P-VOL, though each S-VOL can be in a relationship with only one P-VOL.
It is also possible to define a cascade configuration, where each S-VOL can replicate to a further pair of S-VOLS. The original P-VOL becomes the 'root' and the original S-VOLs are 'nodes'. Nodes are effectively both S-VOLs in the original configuration, and P-VOLS to the third level images, which are called 'leafs'. This effectively extends the number of potential image volumes from 3 to 9.
The main states a ShadowImage pair can have are
You perform ShadowImage operations with the Remote Console-Storage Navigator, which is a GUI based tool, or with TSO commands. If you use the GUI, you need to put intended S-VOLs into Reserved status. You do this from the Set Reserve Attribute Panel. If you use PPRC commands, you do not need to reserve the volumes, but they must be varied offline. The following operations are available with the z/OS variant of ShadowImage
This command defines a new relationship between an P-VOL and up to three S-VOLs. All volumes must be in simplex state. The command also copies all data on the P-VOL to the associated S-VOL(s). The Create Pair command should be transparent to any other process accessing the P-VOL, all read and write I/O operations proceed as normal. Any writes sent to the P-VOL while the initial copy is happening are recorded, and then replicated to the S-VOL after the initial copy is complete.
Once the initial copy is complete, and while the disks are still in Duplex status, The VSP will periodically update the S-VOL(s) with changed data from the P-VOL. This is not a synchronous operation.
You use the TSO command CESTPAIR .. MODE(COPY) to add a shadowimage pair.
When the split pair command is issued to a duplexed pair, the S-VOL becomes a point-in-time copy of the P-VOL. If there are any S-VOL write I/Os outstanding at that time, they are processed. The P-VOL, of course, continues to work as normal, and is not affected by the split command. The S-VOL can now be mounted and brought on-line to a different LPAR, and read or updated as required. While the pair is split, write I/Os made to either the P-VOL or the S-VOL after the Split command are recorded in the track-map for future resynchronisation. Its possible to do the Add and Split commands in a single step.
There are three variants of split; Non Split, Quick Split and Steady Split. With Quick Split, the S-VOL is available immediately, and pending writes happen in the background. With Steady Split, pending writes must complete before the S-VOL can be used.
ShadowImage supports Consistency Groups, where a number of volumes are grouped together to be treated as an entity during operations. For example, a consistency group split will split all the volumes in the group at the exact same point in time.
The CSUSPEND TSO command allow you to split volume pairs.
There are four different variations of the Resynchronise pair operation, Normal, Quick, Reverse and Quick Restore. You can perform normal/quick resync operations on split and suspended pairs, but reverse resync operations can only be performed on split pairs. The four operations in detail are -
You use the TSO command CESTPAIR .. MODE(RESYNCH) for this.
The Suspend Pair command stops the disk subsystem from recording changed tracks in memory. This means that if the pair is re-synchronised again, all the data must be copied from the P-VOL to the S-VOL. The disk subsystem will automatically suspend a pair if it has problems with the mirroring. The P-VOL is not affected if a pair is suspended. Suspend Pair is a ShadowImage concept, and so there is no equivalent PPRC command. The CSUSPEND command is the equivalent of a ShadowImage split.
The Delete Pair command sets the P-VOL and S-VOL status both the simplex, and discards any pending updates to the S-VOL. This means that the S-VOL may not be in the status you require, so its best to do a Split before a Delete Pair, to get the S-VOL consistent. The S-VOL is not available for write operations until the reserve attribute is reset.
You use the TSO command CDELPAIR to delete a shadowimage pair.
HDS support the full IBM FlashCopy command set with their FlashCopy Extension. See the Flashcopy page for details of the FlashCopy commands. With the ShadowImage FlashCopy feature you can take up to six copies of the original ShadowImage source volume.
HDS recently released Hitachi Dataset Replication Software, which enhances Shadowimage to allow replication at dataset level.
You control Open Systems volume copy using ShadowImage Command Control Interface (CCI) commands embedded in scripts. The exact format of the script will depend on the operating system. CCI commands need a configuration definition file, which contains lists of hosts and the volumes pairs or groups of volumes associated with each host. An example of part of a configuration file to define two volumes in a group sqldb is
The following CCI commands are available
paircreate -g sqldb -vl
paircreate -g sqldb -vr
paircreate -g sqldb -vl -m grp
pairsplit -g sqldb -rw -s
pairresync -g sqldb -restore
pairevtwait -g sqldb -s pair -t 10
pairdisplay -g sqldb
ShadowImage can be used with Thin Provisioning disks, to make a very cost effective way to make copies of data.
ShadowImage can also work with TrueCopy to create copies of disks in remote sites