Virtual Provisioning on EMC Symmetrix: Implementation Overview

EMC Symmetrix Virtual Provisioning uses logical devices called thin devices that can be used in many of the same ways that EMC Symmetrix devices have traditionally been used. Unlike traditional EMC Symmetrix devices, thin devices do not need to have physical storage completely allocated at the time the device is created and presented to a host. The physical storage that is used to supply disk space to thin devices comes from a shared thin storage pool, which is comprised of devices called data devices that provide the actual physical storage in the pool.


When a write is performed to a portion of the thin device, the EMC Symmetrix allocates a minimum allotment of physical storage from the pool.

When a read is performed on a thin device, the data being read is retrieved from the appropriate data device in the storage pool to which the thin device is bound. When more storage is required to service existing or future thin devices, data devices can be added to existing thin storage pools. New thin devices can also be created and associated with existing thin pools.

thin device 01

Figure 1: Thin device and thin storage pool containing data devices.

In Figure 1, the host writes to a thin device are services by the EMC Symmetrix Array, the storage is allocated to the thin device from the data devices in the associated storage pool. The Storage is allocated from the pool sequentially, stripping the data across all data device in the pool. Pool storage is allocated sequentially regardless of whether data is written sequentially or randomly to the thin device itself.

thin device 02

Figure 2: Thin Device and Thin Storage Pool with added data devices.

In Figure 2, the free space in the thin storage pool becomes exhausted, new data devices can be added to the thin storage pool. The storage allocation striping continues from existing data devices onto the new data devices added to the storage pool.


thin device 03

Figure 3: Additional Thin Device added

In the Figure 3. It shows that new thin devices can also be added to the thin pool. Each thin device still allocates data sequentially across the storage pool, although as multiple thin devices allocate simultaneously from the pool the net effect is that data placement becomes more random.

Virtual Provisioning Implementation Considerations

When implementing Virtual Provisioning it is important that realistic utilization objectives are set. Basically, the organizations should target no higher than 60% or 80% capacity utilization per pool. A buffer should be provided for unexpected growth or an add-hoc request from project team that consumes more physical capacity than was originally planned for. There should be sufficient free space in the storage pool equal to the capacity of the largest unallocated thin device. Organizations also should balance growth against storage acquisition and installation timeframes. It is recommended that the storage pool be expanded before the last 20% of the storage pool is utilized to allow for adequate striping across the existing data devices and the newly added data devices in the storage pool.