Automated Storage Tiering
In this topic:
About Automated Storage Tiering
Changing physical disk tier numbers
Changing the maximum number of tiers for a disk pool
Preserving tier space for new allocations
Also see:
Disk Pools for information about disk tiers, tier affinity, and pool allocation
Storage Profiles for information about storage profiles
Allocation View for a visual display of the data temperature in disk pools
About Automated Storage Tiering
The Automated Storage Tiering feature (also known as Auto-tiering) continually calculates the frequency that data in disk pools is accessed and migrates data based on the frequency or "temperature". The initial temperature assigned to an SAU is the average temperature of data in the tier to which it is stored. Auto-tiering identifies access patterns in storage allocation units (SAUs) and either promotes the data to a higher priority tier or demotes the data to a lower priority tier based on usage relative to other data within the pool. The most frequently and consistently accessed data will be migrated to higher priority tiers and the least-accessed data will be migrated to lower priority tiers. The tiers used for storage are also effected by the storage profile of a virtual disk, as described in a following section. Automated Storage Tiering is a licensed option.
The write-aware auto-tiering setting gives auto-tiering the ability to migrate data based on both reads and writes equally. This setting could be useful when very few read operations occur to the back-end storage used by a virtual disk. In this case, read operations alone might not present a true picture of how frequently the data is accessed. This could occur with some applications where most operations are performed in memory. The default behavior of auto-tiering has changed in DataCore SANsymphony 10.0 PSP17 and it migrates data based on the frequency of both read and write operations. Data can also be monitored for the frequency of only read operation by disabling the write-aware auto-tiering option in a custom storage profile and applying the storage profile to virtual disks. See Storage Profiles for important information about write-aware auto-tiering and creating custom storage profiles.
A disk pool is comprised of a number of tiers that are used to separate physical disks of different speeds and performance within the same pool. Each pool can have from one to 15 tiers; the default setting is three. The number of tiers in a pool is assigned when it is created, but can be changed at any time. See Changing the Number of Tiers in a Disk Pool in this topic.
When calculating the number of tiers in a disk pool, be aware that there should be a significant difference in performance between tiers in order to justify the migration of data between the tiers. Data migration will affect the disk pool performance.
When physical disks are initially added to a pool, they are assigned (by default) to a tier which falls in the middle of the top and bottom tiers. To implement the auto-tiering scheme, after adding disks to the pool, the user should change the tier number assigned to the disks to reflect the speed and performance of the disks. For instance, if the disk pool has three tiers, Tier 1 should consist of the fastest physical disks in the pool or the disks that should be used the most often. Tier 3 should consist of the slowest disks or disks that should be used the least. See Changing Physical Disk Tier Numbers in this topic. In this manner, frequently accessed data will utilize the fastest disks in the highest priority tiers, while infrequently accessed data can be relegated to the slowest disks in the lowest priority tiers. Automated Storage Tiering can improve performance by decreasing response time when data is being read from physical disks.
See Allocation View for a visual display of the temperature of data in a disk pool.
Preserving Tier Space for New Allocations
A percentage of space in disk tiers of a pool can be preserved for future virtual disk allocations. The Space preserved for new allocations setting allows the percentage value to be set per disk pool and the same percentage of space will be preserved in each tier in the pool, except for the lowest tier (which cannot be preserved). The default setting is 0% per tier which will not preserve any space in tiers. The maximum percentage that can be set is 95% per tier. The percentage can be changed as required. This setting can be configured when a disk pool is created or later in the Settings tab of the Disk Pool Details page.
Since storage allocation begins with the highest available tier in the tier affinity set of a virtual disk, this setting can be used to preserve space in higher tiers for immediate virtual disk allocations without waiting for data migrations to occur. Storage allocations and data migration caused by auto-tiering will occur in each tier until the available space is equal to the percentage set. At that time, the next available tier in the tier affinity set will be used to store SAUs.
The setting will be honored with these exceptions:
- When there is no free space in the pool
- When space is needed to keep SAUs in the virtual disk tier affinity
- The setting does not apply to the lowest tier in the pool. This tier is always available for new allocations when all other tiers are full.
- Automated Storage Tiering must be enabled for this setting to have an effect.
- Changing the setting may result in data migration. The auto-tiering feature will try to maintain the set percentage free in each tier based on space and allocations. The actual allocation among disks in a tier is determined by the tier rebalancing feature.
- In some pool configurations, Tier 1 can become completely full. Setting this percentage to a value higher than zero will help to rebalance completely full tiers by adding enough free space to a tier so that it can be rebalanced.
- Pools with relatively large SAUs (128 MB or larger), may not maintain the exact free space percentage specified in each tier due to the allocation granularity of the pool since allocations are made in units of one whole SAU.
- The Space preserved for new allocations setting is for use with auto-tiering. Auto-tiering must be enabled in order to preserve space in tiers.
To change the percentage of tier space preserved for new allocations:
- Open the Disk Pool Details page>Settings tab for the disk pool.
- In the Auto-tiering area, enter the percentage of tier space to preserve in the Space preserved for new allocations box.
- Click Apply.
Effects of Storage Profiles on Auto-tiering
Automated Storage Tiering works in conjunction with the storage profile assigned to a virtual disk. The storage profile of a virtual disk designates the priority of the data. The tier affinity of a virtual disk are the preferred disk tiers to be used when allocating storage for that virtual disk. The tier affinity is calculated based on the performance class and the maximum number of tiers in the disk pool. SAUs for a virtual disk will reside within the tier affinity unless space is unavailable. When the tier affinity is fully allocated, data will be forced out of tier affinity. Auto-tiering will migrate data to the correct tier affinity once space is available again.
By default, data temperature and migration are based on read and write access patterns. The default behavior of auto-tiering has changed in DataCore SANsymphony 10.0 PSP17 and it migrates data based on the frequency of read and write operations. The write-aware auto tiering option determines the temperature of data by both read and write access patterns equally and migrates data accordingly. This setting may be useful when virtual disk storage is based on applications that are write intensive, but not read intensive. To disable write-aware auto tiering, create a custom storage profile with the option disabled and assign the storage profile to virtual disks. See Storage Profiles for more information.
- Data migration based on auto-tiering (temperature) will occur within the tier affinity for the virtual disk. For instance, if a virtual disk with a storage profile set to Critical has storage allocation units (SAUs) that are seldom accessed, those SAUs will remain in the critical tiers of the disk pool regardless of temperature or usage.
- To have an auto-tiering scheme that is based entirely on temperature or usage with the most frequently used data migrating to the highest priority tiers, a performance class of Normal (the default setting) must be set for all virtual disks. In this case, the tier affinity is set to be all tiers in the disk pool and data is migrated entirely on temperature and the storage profile will have no effect.
See Storage Profiles and Disk Pools for more information on storage profiles and tier affinity.
Data Migration
SAUs migrate between tiers as necessary to maintain the auto-tiering and storage profile schemes. Priority data migrations occur at a much faster rate than Normal priority migrations. The Automated Storage Tiering feature must be enabled for the data migration cases below to occur.
Data Migration Cases
- Priority migrations occur:
- To bring virtual disk data that is outside of the tier affinity back into the tier affinity.
- When a disk is being decommissioned.
- When the performance class in a virtual disk storage profile has changed.
- When the tier number of a physical disk has changed.
- Normal migrations occur:
- When data is promoted or demoted based on frequent and consistent reads that raise or lower the heat map temperature. Data migration is relative to the usage of other data and available space in the tier. Demoted data will only be moved to a lower priority tier if it is required to make space for data that needs to be promoted to that tier.
- The migration of data is a gradual process occurring over time in order to lessen the impact on performance.
- Data migration requires free space in the tier affinity set of a virtual disk and will not occur if all space in the tier affinity is reserved, allocated, or in reclamation. Data cannot be migrated to a tier that does not have a physical disk or does not have free space.
- Data migration is also effected by the pool setting that preserves a percentage of disk tier space for future virtual disk allocations. See the section Tier Space Preserved for New Allocations in this topic for more information.
Changing Physical Disk Tier Numbers
The disk tier number of a physical disk is used in the implementation of the auto-tiering scheme, as well as storage profile settings based on data priority.
Assign a tier number to each pool disk based on the performance of the disk. For instance, if the disk pool has three tiers, Tier 1 should consist of the fastest physical disks in the pool or the disks that should be used the most often. Tier 3 should consist of the slowest disks or disks that should be used the least.
- If physical disks are not assigned to every tier in a disk pool, then the next closest tier in the tier affinity will be substituted when data is promoted or demoted in the tiers.
- Data cannot be migrated to a tier that does not have a physical disk. Data migration does not occur unless auto-tiering is enabled.
- When the tier is changed for pool mirrors, both mirrored physical disks will be changed.
- Changing the tier number for a disk may cause data on the disk to be migrated if auto-tiering is enabled. Data migration will affect the disk pool performance.
- This setting is for use with Automated Storage Tiering, as well as storage profile settings when virtual disks are categorized by priority and pool disks are assigned to tiers based on performance. Use caution when auto-tiering is not enabled.
- If not licensed for Automated Storage Tiering and using the default storage profile settings for virtual disks (Normal), do not change the disk tier number—disks should only use the default tier.
- If non-default storage profiles are assigned to virtual disks, users must always ensure that sufficient physical disk space exists in applicable tiers to accommodate the storage profiles assigned.
To change tier number for a disk:
- In the DataCore Servers panel, expand the disk pool. The physical disks will be listed.
- Right-click on each physical disk, point to Disk Tier and select the correct tier number.
Tier number can also be changed in the physical disk details page.
- Click Yes on the confirmation message to proceed with the operation.
Changing the Maximum Number of Tiers for a Disk Pool
The maximum number of tiers allowed in a pool is used in the implementation of the auto-tiering scheme.
The number of tiers is set per pool. The highest maximum number of tiers is 15; the default setting is three. There should be a significant difference in disk performance between tiers. Three tiers is optimal for most applications. The maximum number of tiers can be changed at any time.
- Changing the maximum number of tiers in a pool does not automatically alter the existing individual disk tier assignments. To decrease the number of tiers, ensure all physical disks are assigned tier numbers within the new tier range. Change the tier number if necessary.
- When calculating the number of tiers in a disk pool, there should be a significant difference in performance between tiers to justify the movement of data between tiers. Data migration will affect the disk pool performance.
- Automated Storage Tiering must be enabled for data migration to occur. If not licensed for Automated Storage Tiering, do not change this setting.
To change the number of tiers:
- Open theDisk Pool Details page>Settings tab for the disk pool.
- In the Disk Tiers area, select the new maximum number of tiers by clicking the arrows in the box.
- Click Apply.