Storage Object Transaction Offloading for Capacity Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face size limitations, which can lead to insufficient space for new transactions, necessitating the removal of processed transactions to accommodate incoming data, while maintaining data integrity and performance.

Innovation Solution

The storage system implements an update process that moves processed transactions from objects to a transaction datastore, creating space by storing them as historical transactions, and uses optimistic locking to ensure data integrity during updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If processed transactions are stored in memory locations with size limitations, then data access performance is maintained, but storage capacity becomes insufficient for new transactions

Engineering Contradiction:
Improvedata access performanceVSAvoidstorage capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The storage system is divided into two distinct segments: memory locations (e.g., object storage) for storing current/active transactions with fast access, and a transaction datastore (e.g., database) for storing historical transactions. This segmentation allows the system to maintain high performance for active transactions while offloading historical data to a storage mechanism with greater capacity but potentially slower access, thereby resolving the contradiction between speed and storage capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention extracts historical transactions from the memory locations and moves them to the transaction datastore. By removing processed/completed transactions from the object storage, the system frees up space in the size-limited memory locations to accommodate new transactions, thus maintaining storage capacity without sacrificing performance for active data.

Inventive Principle:
Principle #2Taking out (Extraction)

2Quantity of substance

If processed transactions are removed from memory locations, then storage space is created for new transactions, but data integrity may be compromised

Engineering Contradiction:
Improvestorage spaceVSAvoiddata integrity
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The transaction datastore acts as an intermediary that ensures data integrity during the transition of transactions from memory locations to permanent storage. The system uses optimistic locking mechanisms and transactional operations to ensure that data is consistently transferred and that no data is lost or corrupted during the move operation. This intermediary layer protects data integrity while enabling space management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by copying transactions to the transaction datastore before removing them from memory locations. This preliminary copy operation ensures that data exists in the new location before the old location is cleared, preventing data loss. The use of atomic operations ensures that the transfer is completed successfully or rolled back if errors occur, maintaining data integrity.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If optimistic locking is used during updates, then data integrity is ensured, but system complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The optimistic locking mechanism enables each transaction operation to self-verify data consistency without requiring complex external locking protocols. The system uses version checking and conditional updates where transactions include their own integrity verification logic. This self-service approach to data integrity reduces the need for complex centralized locking mechanisms, thereby managing system complexity while maintaining reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9652766B1Managing data stored in memory locations having size limitations
Publication Date: 2017.05.16 AMAZON TECH INC
  • US9652766B1 patent drawing
  • US9652766B1 patent drawing
  • US9652766B1 patent drawing

AI summary

Described herein are storage systems, computer readable mediums, and methods for overcoming size limit storage limitations associated with storage systems. Processed transactions may be removed from an object so that input data may be stored at the object. In some implementations, the storage system removes the processed transactions from the object once a section of the object includes a threshold amount of data, and stores the processed transactions at a transaction datastore. Once the processed transactions have been removed from the object, the storage system may store the input data at the object.