Thin Provisioning
Encyclopedia
Thin provisioning is the act of using virtualization technology to give the appearance of more physical resource than is actually available. If you always have enough resource to simultaneously support all of the virtualized resources then you are not thin provisioned. The term thin provisioning is applied to disk later in this article, but could refer to an allocation scheme for any resource. For example, real memory in a computer is typically thin provisioned to running tasks with some form of address translation technology doing the virtualization. Each task believes that it has real memory allocated. The sum of the allocated virtual memory assigned to tasks is typically greater than the total of real memory.
The efficiency of thin or thick/fat provisioning is a function of the use case, not the technology. Thick provisioning is typically more efficient when the amount of resource used is very close to the amount of resource allocated. Thin provisioning is more efficient where the amount of resource used is much smaller than allocated so that the benefit of providing only the resource needed exceeds the cost of the virtualization technology used.
Just in time allocation is not the same as thin provisioning. Most file systems back files just in time but are not thin provisioned. Over allocation is not the same as thin provisioning, you can over-allocate / oversubscribe resources like selling seats on an airplane without using virtualization technology that makes each consumer think that their seat number exists.
Thin provisioning is a mechanism that applies to large-scale centralized computer disk storage systems, SANs
, and storage virtualization
systems. Thin provisioning allows space to be easily allocated to servers, on a just-enough and just-in-time basis.
With thin provisioning, storage capacity utilization efficiency can be automatically driven up towards 100% with very little administrative overhead. Organizations can purchase less storage capacity up front, defer storage capacity upgrades in line with actual business usage, and save the operating costs (electricity and floorspace) associated with keeping unused disk capacity spinning.
Previous systems generally required large amounts of storage to be physically preallocated because of the complexity and impact of growing volume (LUN) space. Thin provisioning enables over-allocation or over-subscription.
to view more storage capacity than has been physically reserved on the storage array itself. This allows flexibility in growth of storage volumes, without having to predict accurately how much a volume will grow. Instead, block growth becomes sequential. Physical storage capacity on the array is only dedicated when data is actually written by the application, not when the storage volume is initially allocated. The servers, and by extension the applications that reside on them, view a full size volume from the storage but the storage itself only allocates the blocks of data when they are written.
As a practical consideration, a storage manager needs to monitor actual storage used, adding additional storage capacity such as disks, tapes, solid-state drives (SSD
), etc. as necessary to satisfy the write requests of the server and residing application(s).
The Over-allocation concept was first introduced when STK announced their Iceberg product in 1992.
The efficiency of thin or thick/fat provisioning is a function of the use case, not the technology. Thick provisioning is typically more efficient when the amount of resource used is very close to the amount of resource allocated. Thin provisioning is more efficient where the amount of resource used is much smaller than allocated so that the benefit of providing only the resource needed exceeds the cost of the virtualization technology used.
Just in time allocation is not the same as thin provisioning. Most file systems back files just in time but are not thin provisioned. Over allocation is not the same as thin provisioning, you can over-allocate / oversubscribe resources like selling seats on an airplane without using virtualization technology that makes each consumer think that their seat number exists.
Thin provisioning is a mechanism that applies to large-scale centralized computer disk storage systems, SANs
Storage area network
A storage area network is a dedicated network that provides access to consolidated, block level data storage. SANs are primarily used to make storage devices, such as disk arrays, tape libraries, and optical jukeboxes, accessible to servers so that the devices appear like locally attached devices...
, and storage virtualization
Storage Virtualization
Storage virtualization or storage virtualisation is a concept and term used within computer science. Specifically, storage systems may use virtualization concepts as a tool to enable better functionality and more advanced features within the storage system.Broadly speaking, a 'storage system' is...
systems. Thin provisioning allows space to be easily allocated to servers, on a just-enough and just-in-time basis.
Overview
Thin Provisioning, in a shared storage environment, is a method for optimizing utilization of available storage. It relies on on-demand allocation of blocks of data versus the traditional method of allocating all the blocks up front. This methodology eliminates almost all whitespace which helps avoid the poor utilization rates, often as low as 10%, that occur in the traditional storage allocation method where large pools of storage capacity are allocated to individual servers but remain unused (not written to). This traditional model is often called "fat" or "thick" provisioning.With thin provisioning, storage capacity utilization efficiency can be automatically driven up towards 100% with very little administrative overhead. Organizations can purchase less storage capacity up front, defer storage capacity upgrades in line with actual business usage, and save the operating costs (electricity and floorspace) associated with keeping unused disk capacity spinning.
Previous systems generally required large amounts of storage to be physically preallocated because of the complexity and impact of growing volume (LUN) space. Thin provisioning enables over-allocation or over-subscription.
Over-allocation
Over-allocation or over-subscription is a mechanism that allows a serverServer (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
to view more storage capacity than has been physically reserved on the storage array itself. This allows flexibility in growth of storage volumes, without having to predict accurately how much a volume will grow. Instead, block growth becomes sequential. Physical storage capacity on the array is only dedicated when data is actually written by the application, not when the storage volume is initially allocated. The servers, and by extension the applications that reside on them, view a full size volume from the storage but the storage itself only allocates the blocks of data when they are written.
As a practical consideration, a storage manager needs to monitor actual storage used, adding additional storage capacity such as disks, tapes, solid-state drives (SSD
Solid-state drive
A solid-state drive , sometimes called a solid-state disk or electronic disk, is a data storage device that uses solid-state memory to store persistent data with the intention of providing access in the same manner of a traditional block i/o hard disk drive...
), etc. as necessary to satisfy the write requests of the server and residing application(s).
The Over-allocation concept was first introduced when STK announced their Iceberg product in 1992.
See also
- Storage VirtualizationStorage VirtualizationStorage virtualization or storage virtualisation is a concept and term used within computer science. Specifically, storage systems may use virtualization concepts as a tool to enable better functionality and more advanced features within the storage system.Broadly speaking, a 'storage system' is...
- Storage hypervisorStorage hypervisorIn computing, a storage hypervisor is a portable software program that runs on a physical hardware platform, on a virtual machine, inside a hypervisor OS or in all three places. It may co-reside with virtual machine supervisors or have exclusive control of its platform...
- Thin provisioning on the HP P6000 EVA de:Thin Provisioning