HP 3PAR StoreServ provides two kinds of snapshot, Physical Copies and Virtual Copies.
A Physical Copy is a full copy of a volume, which duplicates all of the data on a base, or parent volume to a destination volume. The T0 is the point in time when the create command was issued. A typical create command would look like
createpvvcopy -p -s parent_volume:destination_volume -pri high
You substitute your own values for parent and destination volumes. Once the physical data transfer was complete, the snapshot relationship would normally be terminated, but the -s switch means maintain the relationship, so that if you want to run a resynchronisation, then this can be done by copying any data that was changed since the original create command was issued.
You can also manage Physical Copies in groups of up to 100 volumes, to ensure data consistency over the snapshot and simplify administration, by using the creategroupvvcopy command.
You can make your destination volumes space efficient by using the -tppv switch, for Thinly Provisioned Virtual Volumes, or -tdvv for Thinly Deduped Virtual Volumes. If you do this, then you should place your destination volume in the same CPG (Common Provisioning Group aka storage pool) as your parent volume.
If you use online physical copies, this will automatically create a destination volume that can be exported to a host striaght away. while the cloning I/O happens in the background.
If you use offline physical copies, then you must make sure that the selected destination volume is the correct size, and will not be available for connection to a host until the cloning I/O is complete.
The data held in virtual voumes is scattered around physical disks and located with pointers. This means that snapshots can be created and managed by simply manipulating or copying those pointers. HD 3PAR Virtual Copies use either CoW or Row, depending on the disk type and the destination volume type.
Destination volumes from SSD source disks that are created using the -tdvv switch will use Redirect on Write (RoW) which means that any I/Os that are made to the source volume after the create command is issued, are written directly to a new location on disk and the associated source pointers are updated. The destination volume continues to use the old location and does not need any changes to its pointers. The snap data will be deduplicated
All other data uses CoW (Copy on Write) where if an I/O is made to a source volume after the create command is issued, the I/O is marked as complete in cache, then the original data is moved to a new location, the pointers for the destination volume are updated to point to that new location, then the source data is written out from cache to the original location on disk.
With 3PAR 3.2.2, up to 2,048 snapshots can be created, and they can be contained in up to 100 consistency groups. Virtual snapshots are always thin, and initially they will use no capacity as they will be identical to the parent disk. The snapshots will start to use space as the data on the parent disk changes. Virtual Copy snapshots can be RO (Read Only) or RW (read Write), but an RO snapshot can only be made from an RW volume and an RW snapshot can only be made from an RO volume. Typical create commands are:
createvvcopy -p vv1 vv2
This will just simply create a snapshot or vv1, called vv2
You can group volumes together into consistency groups then manage the whole group with single commands.
createvvcopy -s -p set:set1 set:set1copy
This will create a snapshot of a set of disks called set1, calling the copy set set1copy, and the -s switch means that the copy can be refreshed later. If you wanted an up to date copy of set1, you would simply use the createvvcopy command with the -r switch.
createvvcopy -r set:set1copy
If you are using snapshot copies for backups, then you will probably want to put them into different CPGs. For example your parent disks might be SSDs, but your backup disks might live in a SAS CPG. To do this, you include the name of the target CPG in your create command
createvvcopy -p -vv1 -online -tpvv cpgsas vv2
Here we are copying volume vv1 in thin provision mode to volume vv2, which already exists online in CPG cpgsas.
To restore a parent volume from a snapshot, you use the promote command, which promotes a virtual copy back to its base volume. If the parent volume has been exported to any hosts, it must be unexported first.
Snapshots can be given an expiry date so they are deleted automatically. If you need to delete snapshots manually, use the removevv command.
Snapshot creates a temporary unit to store original data that has been overwritten on the source. It does not copy all the data, unchanged data is read
from the source. Snapshot requires that both controllers have 512MB of mirrored cache. The resultant Snapshot Unit is read only. Up to 4 snapshot units can be created per Source Unit.
The snapshot command is
ADD SNAPSHOT-UNITS snapshot-unit storageset source-unit
The point-in-time is the instant the command is entered.
The clone utility creates a complete copy of the data internally, and can copy at up to 60GB/hour if the IO load on the box is not excessive. There is no limit, beyond device capacity, to the number of clones that can be created. Once the clone command completes, it splits the two copies so they can be accessed independently. The copy point-in-time is the end of the clone process, not the time the command was issued.
Cloning is an interactive process, a typical dialogue, with user input in bold type would be
Clone local program invoked
Units available for cloning:
Enter unit to clone ?” 34
clone will create a new unit which is a copy of unit 34
enter the unit number which you want assigned to the new unit ? 42
The new unit will be added with one of the following methods:
1. Clone will pause after all members have been copied. The user must then press return to cause the new unit to be added.
2. After all members have been copied, the unit will be added automatically
Under which above method should the new unit be added  ? 1
Devices available for clone targets
Use available device disk20300(size=832317) for member
Disk10200(size=832317) (Y,N) [Y] ? Y
Mirror disk10200 C-MA
SET C-MA NOPOLICY
SET C-MA MEMBERS=2
SET C-MA REPLACE=DISK20300
Devices available for clone targets
Use available device disk10300(size=832317)for member
disk(size=832317)(Y,N)[Y] ? Y
Mirror disk100000 C-MB
SET C-MB NOPOLICY
SET C-MB MEMBERS=2
SET C-MB REPLACE=DISK10300
Copy in progress for each new member, please be patient..
copy from disk 10200 to disk20300 is 100% complete
copy from disk 10000 to disk10300 is 100% complete
press return when you want the new unit to be created
.. some mirrorset messages ..
D44 has been created, it is a clone of D32
Clone- normal termination
Snapclone data is available almost immediately even while clone is being built. The data copy starts out as a Snapshot and becomes a Clone once the data copy is complete.