Application-Specific Cloud Storage With Block-Object Data Placement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage systems face inefficiencies in data management and storage operations, particularly in handling flash drives without integrated storage controllers, leading to unnecessary write operations and reduced reliability.

Innovation Solution

Implementing a direct-mapped flash storage system where the operating system initiates and controls processes, such as data allocation and garbage collection, across multiple flash drives without involving lower-level storage controllers, utilizing non-volatile RAM as a buffer for write operations, and employing erasure coding for redundancy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional storage controllers manage flash drives, then storage operations are automated, but write operations become redundant and reliability decreases

Engineering Contradiction:
Improvestorage reliabilityVSAvoidstorage controller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the storage controller functionality from the flash drive hardware and relocates it to the operating system. The OS now directly manages flash drive operations including wear leveling, garbage collection, and write operations, eliminating the need for integrated storage controllers and reducing redundant write operations that previously occurred at the controller level.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The operating system takes on the role of self-managing flash storage operations without requiring external storage controllers. The OS implements its own flash translation layer that handles allocation, wear leveling, and garbage collection autonomously, making the storage system self-sufficient and eliminating the intermediary controller that caused redundancy.

Inventive Principle:
Principle #25Self-service

2Productivity

If storage controllers manage data allocation, then data management is automated, but write operations increase and efficiency decreases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidwrite operation overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent removes the storage controller's data allocation management and transfers it to the operating system. This extraction eliminates the redundant write operations that occurred when controllers managed allocation separately from the OS, reducing overall write overhead and improving storage efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent merges the data allocation management functions into a single entity - the operating system. By combining OS-level file management with flash-specific wear leveling and allocation in one unified layer, the system eliminates redundant operations between controller and OS, reducing write overhead and improving efficiency.

Inventive Principle:
Principle #5Merging (Combining)

3Quantity of substance

If multiple flash drives are used for storage, then storage capacity increases, but data integrity management becomes complex

Engineering Contradiction:
Improvestorage capacityVSAvoiddata management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent creates a universal flash translation layer in the operating system that handles multiple flash drives through a unified interface. This single OS-level management system can manage any number of flash drives simultaneously, providing consistent wear leveling, garbage collection, and data integrity protection across all drives without requiring separate controller logic for each drive.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The operating system acts as an intermediary layer between the application and multiple flash drives. This mediator handles all data allocation, wear leveling, and integrity management centrally, simplifying the complexity of managing multiple drives by providing a single point of control that abstracts the underlying complexity from applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Duration of action of stationary object

If storage controllers perform garbage collection, then storage maintenance is automated, but write operations increase and longevity decreases

Engineering Contradiction:
Improveflash drive longevityVSAvoidcontroller operation complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The patent extracts garbage collection functionality from the storage controller and implements it directly in the operating system. This eliminates the redundant write operations that occurred when controllers performed garbage collection separately, reducing overall write amplification and extending flash drive longevity while maintaining automated maintenance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The operating system performs self-service garbage collection management for flash drives without requiring external controller intervention. By autonomously handling unused block reclamation and wear leveling at the OS level, the system reduces write overhead and extends flash memory life while maintaining simplified operations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11416298B1Providing application-specific storage by a storage system
Publication Date: 2022.08.16 PURE STORAGE INC
  • US11416298B1 patent drawing
  • US11416298B1 patent drawing
  • US11416298B1 patent drawing

AI summary

Providing application-specific storage by a cloud-based storage system, including: identifying, for an application that utilizes resources within the cloud-based storage system, one or more characteristics associated with the application; and selecting, in dependence upon the one or more characteristics associated with the application and characteristics of resources within the cloud-based storage system, one or more resources within the cloud-based storage system to support the execution of the application, wherein at least a portion of a dataset associated with the application is stored as blocks within block storage resources in the cloud-based storage system and also stored as objects within object storage resources in the cloud-based storage system.