.

Provisioning

All storage in the StorONE system uses thin provisioning, meaning storage pools provide virtual storage containers, such as volumes, with only the necessary amount of storage. When creating a new volume, only the required storage needs to be assigned, and more can be added as needed. There are two types of pools in the system.

  • Single-type pool consists of approved physical drives of the same type. For example, in a single-type pool, all approved physical drives may be either SSD or HDD, but not both. In a single-type pool, it is not possible to have both HDD and SSD types of physical drives. Single-type pool can be classified by their physical-drive type (SSD, NVMe Flash, SAS (Serial Attached SCSI) Flash, and HDD). Hence, we can speak about “HDD pool” or “SSD pool”.
  • Multi-type pool consists of approved physical drives of different types. IT can set Quality of Service (QoS) for each pool, with high-performance applications connecting to pools with faster storage, and lower-performance applications connecting to pools with slower storage.

The StorONE system offers three main types of logical volumes:

  1. Simple volume, which is based on a single media type, runs on a single-type pool and is single-tiered.
  2. Multi-tier volume, which gets its storage from a multi-media type pool and allows for configurable tiering levels.
  3. Complex (vRAID+) volume, which gets its storage from multiple pools (single or multi-media type) and allows for configurable tiering.

The type of the logical volume is determined when it is created. Logical volumes available for clients in three types of storage architectures:

  • File storage architecture
  • Object storage architecture
  • Block storage architecture

First you need to create the logical volume and then you can define a storage architecture on top of it.

File storage architecture

A file storage architecture refers to the design and organization of a logical volume for storing and managing files. When established on top of a logical volume, the file storage architecture can be accessed through protocols such as SMB or CIFS for Windows machines, or NFS for Linux or VMware machines. The file storage architecture is implemented in a network-attached storage (NAS) server, providing large storage capacity at a relatively low cost. If you simply need a place for files, file storage may be the way to go.

Object storage architecture

Object storage architecture stores data as individual units called objects. Each object contains all of the data associated with it and is assigned a unique identifier. The objects are stored in a flat address space, rather than in a hierarchical file system.

Block storage architecture

Block storage architecture is a way of storing data where it is organized into fixed-sized blocks that can be accessed individually. These blocks are built on a logical volume, which acts like an empty hard drive, and can be used for any purpose that an empty hard drive can be used for, such as formatting to different file systems. Block storage is frequently utilized in Storage Area Networks (SANs) and is connected through the Small Computer System Interface (SCSI) standard. It can be mapped to a host using protocols like iSCSI, FC, or NVMeOF.

Tiering

Tiered storage is storage that is divided into layers according to levels of performance. In tiered storage, each drive must be in one of the tiers. Usually, a fast SSD drive would be in the hot (upper) tier; while a slower HDD drive would be in the cold (lower) tier. Auto-tiering refers to tiered storage that automatically moves data between tier levels. Auto-tiering is a technique to dynamically manage data placement based on usage patterns.

When to tier a logical volume and why

Tiering is applicable to multi-tier and complex (vRAID+) logical volumes; a simple logical volume cannot be tiered. Tiering can be configured when the logical volume is created, or it can be configured later, when editing a preexisting volume. Tiering is useful when storage efficiency is at premium. Typically, some data are more frequently accessed than others. Storing frequently accessed data on a hot tier provides a faster read and write operation.

Creating a tiered logical volume

When creating a tiered logical volume, you must select a tier level for each of the drives in the pools. The drive can either be in:

  • Upper-tier (Hot tier)
  • Lower-tier (Cold tier)

In an auto-tiered logical volume, StorOne automatically determines the tiering level of each data block based on frequency of access. StorOne stores frequently accessed data in the hot-tier level and infrequently accessed data in the cold-tier level.

By default the system always tries to write new incoming data to the hot tier. However, in the event of extensive writing operations, the hot tier may temporarily be out of space. In this case, the new data will be written directly to the lower-tier.

When setting up a tiered logical volume, you must specify two capacity threshold values, evacuation threshold and lower threshold. If the capacity in the hot tier exceeds the evacuation threshold, data will be moved to the lower (cold) tier based on frequency of access. When the storage capacity in the hot tier reaches the lower-threshold, evacuation of data to the lower tier will stop. Both the evacuation-threshold and the lower-threshold are expressed as percentages.

Let C be the total capacity of the upper tier, let E be the evacuation threshold (in percent), and L be the lower threshold (in percent). The usage-capacity of the upper tier determines when the volume starts and stops moving data from the upper tier to the lower tier.

  1. Start evacuation range: If the usage capacity of the upper tier goes above the evacuation threshold, (E*C)/100, then StorONE system starts to move data from the upper tier to the lower tier.
  2. Stop evacuation range: If the usage capacity of the upper tier drops below the lower threshold, (L*C)/100, then the StorONE system stops moving data from the upper tier to the lower tier.
  3. Bypass range: If the usage capacity of the upper-tier exceeds C, then no capacity space is left in the upper tier. Incoming new data will be written directly to the lower tier.

Upper-tier range levels

In a tiered logical volume, data moves between tiers at the block level. For example, it is possible for part of a file to be written to the upper tier, and the other part to be written to the lower tier.

Last updated on 15 Nov 2022
Published on 30 Oct 2022