Pre-reserve Allocation for Storage Write Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional file system architectures often fail to recognize and allocate sufficient physical memory for write operations, leading to inconsistent states and difficulties in correcting failures when physical memory is insufficient.

Innovation Solution

Implementing a pre-reserve allocation process that converts available unallocated memory space to allocated memory space before proceeding with memory operations, ensuring sufficient memory is allocated before executing write operations and aborting them if insufficient, thereby minimizing resource occupation and time expenditure on failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional file system architectures issue write operation commands assuming physical storage availability, then write operations can proceed quickly without pre-allocation overhead, but write operations may fail when physical memory is insufficient, causing file system inconsistency

Engineering Contradiction:
Improvewrite operation speedVSAvoidwrite operation success rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a pre-reserve allocation process that checks and allocates physical memory space before executing write operations. This preliminary action ensures that sufficient physical memory is available before the write operation begins, preventing write failures and maintaining file system consistency while minimizing resource occupation on failure.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If file systems are unaware of reduced physical memory space in thin provisioned architectures, then virtual memory operations can proceed without allocation checks, but physical memory exhaustion causes write failures and file system inconsistency

Engineering Contradiction:
Improvevirtual memory supportVSAvoidphysical memory allocation reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a feedback mechanism where the pre-reserve allocation process continuously monitors physical memory availability and provides information back to the file system. This feedback loop enables the file system to make informed decisions about write operations based on actual physical memory status, preventing writes when memory is insufficient and maintaining consistency.

Inventive Principle:
Principle #23Feedback

3Productivity

If conventional approaches cache writes and return successful indication before completing the write, then application productivity is improved, but write failures after successful indication create file system inconsistency requiring drastic corrective measures

Engineering Contradiction:
Improveapplication throughputVSAvoidfile system consistency maintenance
Core Design Contradiction:
ProductivityVSEase of repair

Solution Approach 1:

The patent applies preliminary anti-action by performing pre-reserve allocation checks before write operations to prevent the adverse effect of write failures. By ensuring physical memory availability in advance, the system prevents the inconsistency problem that would require drastic corrective measures, while still allowing cached writes to improve application throughput.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS8578124B2Storage systems and methods with pre-reserve allocation
Publication Date: 2013.11.05 ARCTERA US LLC
  • US8578124B2 patent drawing
  • US8578124B2 patent drawing
  • US8578124B2 patent drawing

AI summary

Systems and methods for information storage replication are presented. In one embodiment a storage flow control method includes receiving a memory operation indication; performing a pre-reserve allocation process before proceeding with the memory operation, wherein the pre-reserve allocation process includes converting available unallocated memory space to allocated memory space if there is sufficient available unallocated memory space to perform the memory operation; executing the memory operation if the pre-reserve allocation process returns an indication there is sufficient memory space allocated to perform the memory operation; and aborting the memory operation if the pre-reserve allocation process returns an indication there is sufficient memory space allocated to perform the memory operation. In one embodiment, the memory operation is a write operation. The memory operation can be a write operation.