HP 3PAR StoreServ Snapshots

HP 3PAR StoreServ provides two kinds of snapshot, Physical Copies and Virtual Copies.

Physical Copy

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.

Virtual Copy

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.

promotevvcopy vv2

Snapshots can be given an expiry date so they are deleted automatically. If you need to delete snapshots manually, use the removevv command.

HP StorageWorks EVA snapshots


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

  • Source Unit is the unit name where the original data exists, and must be less than 512GB
  • Snapshot Unit is a user supplied name for the copy data
  • Storageset is the unassigned capacity that will be used for the Snapshot Unit. The capacity of the storageset must be equal to, or greater than the capacity of the 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

Run Clone
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
Disk20300 (size=832317)
Disk20500 (size=832317)
Disk30300 (size=832317)
Use available device disk20300(size=832317) for member
Disk10200(size=832317) (Y,N) [Y] ? Y
Mirror disk10200 C-MA
Devices available for clone targets
Disk20500 (size=832317)
Disk30300 (size=832317)
Use available device disk10300(size=832317)for member
disk(size=832317)(Y,N)[Y] ? Y
Mirror disk100000 C-MB
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.