Filesystem Creation Coordination for Deterministic Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage systems face performance issues when creating upper-deck filesystems due to the operation of multiple threads provisioning storage from divergent locations, leading to reduced performance.

Innovation Solution

Pre-provisioning the lower-deck filesystem with enough storage to ensure the container file is composed of proximately located storage units, allowing for efficient formatting of the upper-deck filesystem using parallelization techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple threads are used to format the upper-deck filesystem in parallel, then the creation speed is improved, but the performance becomes unpredictable due to container files being provisioned from divergent storage locations

Engineering Contradiction:
Improvefilesystem creation speedVSAvoidperformance predictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary provisioning of the lower-deck filesystem and container files before the parallel formatting operation begins. This ensures that all storage resources are pre-allocated and positioned optimally, so when multiple threads subsequently format the upper-deck filesystem in parallel, they all operate on storage units with known, proximate locations, maintaining predictable performance while achieving fast parallelization.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If storage is provisioned on-the-fly during parallel formatting, then resource allocation is flexible, but storage units are located at divergent positions leading to reduced performance

Engineering Contradiction:
Improvedynamic storage allocationVSAvoidfilesystem performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The system performs preliminary provisioning of the lower-deck filesystem and container files before the parallel formatting operation begins. This ensures that all storage resources are pre-allocated and positioned optimally, so when multiple threads subsequently format the upper-deck filesystem in parallel, they all operate on storage units with known, proximate locations, maintaining predictable performance while achieving fast parallelization.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9916312B1Coordination of file system creation to ensure more deterministic performance characteristics
Publication Date: 2018.03.13 EMC IP HLDG CO LLC
  • US9916312B1 patent drawing
  • US9916312B1 patent drawing
  • US9916312B1 patent drawing

AI summary

A method includes (a) receiving a command to create an upper-deck filesystem of a specified size, the upper-deck filesystem residing within a logical volume expressed from a container file of a lower-deck filesystem, (b) provisioning a plurality of storage provisioning units (SPUs) from a storage pool of the data storage system to the container file in an order reflecting proximity of the SPUs within storage devices of the data storage system, the plurality of SPUs providing storage for the entire container file, and (c) subsequent to provisioning the plurality of SPUs to the container file, executing a plurality of threads in parallel to write metadata of the upper-deck filesystem to the plurality of SPUs, representing the upper-deck filesystem. Other embodiments are directed to a system, a computerized apparatus, and a computer program product for performing methods similar to that described above.