ASM Striping

ASM striping is the process of dividing a file into 1 MB extents and spreading the extents evenly across all disks in the disk group. An extent is a specific number of contiguous data blocks, obtained in a single allocation, used to store a specific type of information. This optimizes performance and disk utilization, making manual I/O performance tuning unnecessary. ASM enhances the concept of striping by providing additional flexibility for changes in the disk configuration. Spreading the workload across as many disks as possible results in less contention and high I/O throughput.

ASM automatically distributes ASM files across disks in an ASM diskgroup using file extents. An allocation unit is the smallest contiguous disk space that ASM allocates. The allocation unit size is set at ASM diskgroup creation time and it is typically one megabyte.

For striping, or the interleaving of a related block of data across disks, the following parameters need to be defined:

  • Stripe depth is the size of the stripe, sometimes called stripe unit.

  • Stripe width is the product of the stripe depth and the number of drives in the striped set.

For situations where performance requires more throughput than one disk per extent provides, extent striping can be used. ASM currently only supports fine (128K X 8) and coarse grain striping. The AVD driver supports stripe widths that are different than the ASM allocation unit to support better efficiency when an ASM volume file is used with a filesystem. This attribute can be specified at ASM volume file creation time and cannot be changed.

Note: Stripe widths other than the ASM allocation unit (coarse grain) in a diskgroup may not be supported in the first release for ASM volume files.