Features of Auto Tiering in Qsan XCubeSAN storage system

Continuing to consider technologies for accelerating I / O operations as applied to storage systems, launched in previous article, it is impossible not to stop at such a very popular option as tiring (Auto Tiering). Although the ideology of this function is very similar for different manufacturers of storage systems, we will consider the features of the implementation of tearing using the example Storage Qsan.

Features of Auto Tiering in Qsan XCubeSAN storage system

Despite the variety of data stored on storage systems, these same data can be divided into several groups based on their demand (frequency of use). The most popular (“hot”) data is extremely important to organize the fastest possible access, while the processing of less demanded (“cold”) data can be performed with a lower priority.

To organize such a scheme, the tearing functionality is just used. The data array in this case does not consist of disks of the same type, but of several groups of drives that form different storage tiers. Using a special algorithm, data is automatically moved between levels in order to ensure maximum overall performance.

Features of Auto Tiering in Qsan XCubeSAN storage system

Storage Qsan support up to three storage levels:

  • Tier 1: SSD, maximum performance
  • Tier 2: HDD SAS 10K/15K, high performance
  • Tier 3: HDD NL-SAS 7.2K, maximum capacity

An Auto Tiering pool can contain both all three levels, and only two in any combination. Within each Tier, drives are combined into the usual RAID groups. For maximum flexibility, the RAID level in each Tier can be different. That is, for example, nothing prevents organizing a structure like 4x SSD RAID10 + 6x HDD 10K RAID5 + 12 HDD 7.2K RAID6

After creating volumes (virtual disks) on Auto Tiering pool, it starts collecting statistics about all I/O operations in the background. To do this, the space is "cut" into 1GB blocks (the so-called sub LUNs). With each access to such a block, it is assigned a coefficient of 1. Then, over time, this coefficient decreases. After 24 hours, it, in the absence of I / O requests to this block, will already be equal to 0.5 and will continue to fall every subsequent hour.

At a certain point in time (by default, every day at midnight), the collected results are ranked by sub LUN activity based on their coefficients. Based on this, a decision is made which blocks to move and in which direction. After that, in fact, the data is relocated between levels.

Features of Auto Tiering in Qsan XCubeSAN storage system

The Qsan storage system perfectly implements the management of the tearing process using a variety of parameters, which will allow you to very flexibly adjust the final performance of the array.

To determine the initial location of data and the priority direction of its movement, policies are used that are set separately for each volume:

  • Auto Tiering – the default policy, the initial placement and direction of movements is determined automatically, i.e. "hot" data tends to the highest level, and "cold" data moves down. The initial placement is selected based on the available space on each level. But you need to understand that the system primarily seeks to maximize the use of the fastest drives. Therefore, if there is free space, the data will be placed at the upper levels. This policy is suitable for most scenarios where data demand cannot be predicted in advance.
  • Start High and then Auto Tiering – difference from the previous one only in the initial data location (at the fastest level)
  • The highest level – data always tends to take the fastest level. If in the course of work they are shifted down, then at the first opportunity they move back. This policy is appropriate for data that requires the fastest possible access.
  • Minimum level Data always tends to be at the lowest level. This policy is great for infrequently used data (for example, archives).
  • Without moving – the system automatically determines the original location of the data and does not move them. However, statistics continue to be collected in case they need to be relocated later.

It's worth noting that while policies are defined when each volume is created, they can be changed on the fly multiple times during the system's life cycle.

In addition to the policies for the tearing mechanism, the frequency and rate of data movement between levels is also configured. You can set a specific moving time: daily or on certain days of the week, as well as reduce the statistics collection interval to several hours (the minimum frequency is 2 hours). If there is a need to limit the execution time of the data movement operation, you can set a time frame (window for movement). In addition, the speed of relocation is also indicated - 3 modes: fast, medium, slow.

Features of Auto Tiering in Qsan XCubeSAN storage system

If there is a need for immediate data relocation, it is possible to perform it manually at any time at the command of the administrator.

It is clear that the more often and faster the data is moved between levels, the more flexible the storage system will adapt to the current operating conditions. But at the same time, it’s worth remembering that moving is an additional load (primarily on disks), so it’s not worth it to “drive” data without extreme necessity. It is better to plan the movement at the moments of minimum loads. If the operation of the storage system constantly requires high performance in 24/7 mode, then it is worth reducing the relocation rate to a minimum.

The abundance of tearing settings will undoubtedly please advanced users. However, for those who are faced with such technology for the first time, there is nothing to worry about. It is quite possible to trust the default settings (Auto Tiering policy, move at maximum speed once a day at night) and, as statistics accumulate, adjust certain parameters to achieve the desired result.

Comparing tearing with such equally popular technology for increasing productivity as SSD caching, you should remember about the different principles of operation of their algorithms.

SSD caching
Auto Tiering

Effect onset speed
Almost instantly. But a noticeable effect only after "warming up" the cache (minutes-hours)
After collecting statistics (from 2 hours, ideally - a day) plus the time to move the data

Effect duration
Until the data is pushed out by a new portion (minutes-hours)
While the demand for data is relevant (a day or more)

Indications for use
Immediate short term performance increase (databases, virtualization environments)
Performance increase for a long period (file, web, mail servers)

Also, one of the features of tearing is the ability to use it not only for scenarios like "SSD + HDD", but also "fast HDD + slow HDD" or all three levels in general, which is basically impossible in the case of using SSD caching.

The test is

To test the operation of tearing algorithms, we conducted a simple test. A pool of two levels of SSD (RAID 1) + HDD 7.2K (RAID1) was created, on which a volume with a "minimum level" policy was placed. Those. data should always be located on slow disks.

Features of Auto Tiering in Qsan XCubeSAN storage system

Features of Auto Tiering in Qsan XCubeSAN storage system

The management interface clearly shows the placement of data between levels

After filling the volume with data, we changed the placement policy to Auto Tiering and ran the IOmeter test.

Features of Auto Tiering in Qsan XCubeSAN storage system

After several hours of testing, when the system was able to accumulate statistics, the relocation process began.

Features of Auto Tiering in Qsan XCubeSAN storage system

At the end of the data transfer, our test volume completely "creeped" to the upper level (SSD).

Features of Auto Tiering in Qsan XCubeSAN storage system

Features of Auto Tiering in Qsan XCubeSAN storage system

Verdict

Auto Tiering is a wonderful technology that allows you to increase the performance of your storage system with minimal material and time costs due to more intensive use of high-speed drives. Applied to Qsan the only investment is a license, which is purchased once and for all without limitation on the volume/number of disks/shelves/etc. This functionality is equipped with such rich settings that it can satisfy almost any business task. And the visualization of processes in the interface will allow you to effectively manage the device.

Source: habr.com

Add a comment