Block Data Storage Volumes Reliability via Mirroring and Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of managing and provisioning physical computing resources in large-scale data centers has increased due to the growth in scale and scope of computer networks, necessitating improved availability and reduced manual efforts for block data storage.

Innovation Solution

A block data storage system that utilizes multiple server storage systems to provide reliable non-local block data storage, with features like mirroring and archival storage to enhance volume reliability and availability, managed by a Block Data Storage System Manager and Node Manager to ensure transparent access and redundancy across networks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple server storage systems are used to store block data volumes, then reliability and availability are improved, but device complexity increases

Engineering Contradiction:
Improvevolume reliabilityVSAvoidstorage system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage system is segmented into multiple independent server storage systems, each storing a copy of block data volumes. This segmentation allows the system to distribute reliability burden across multiple components while maintaining overall system reliability through redundancy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple copies of block data volumes are stored across different server storage systems. This copying strategy ensures that if one server fails, other copies remain accessible, thereby improving reliability without requiring complex real-time synchronization mechanisms.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If block data storage is made non-local and accessible over networks, then adaptability and accessibility are improved, but loss of time for data access increases

Engineering Contradiction:
Improvestorage accessibilityVSAvoiddata access time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

A block data storage system manager acts as an intermediary between clients and server storage systems. This manager handles mounting, unmounting, and data access coordination, abstracting the network complexity from clients and optimizing data retrieval operations to minimize access time.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by maintaining multiple copies of data across different servers and pre-establishing access pathways. When a client needs data, the system can quickly locate and serve the appropriate copy without requiring complex real-time decisions, thereby reducing access time.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If manual provisioning and management of storage resources is reduced, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improveprovisioning efficiencyVSAvoidsystem management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The block data storage system manager provides self-service capabilities by automatically managing volume provisioning, allocation, and distribution to clients. The system autonomously handles storage resource management tasks, eliminating manual intervention and improving productivity while the encapsulated complexity remains managed within the system boundaries.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP2324429B1Providing executing programs with reliable access to non-local block data storage
Publication Date: 2020.10.14 AMAZON TECH INC
  • EP2324429B1 patent drawingFigure 1
  • EP2324429B1 patent drawingFigure 2A~2B
  • EP2324429B1 patent drawingFigure 2C

AI summary

Techniques are described for managing access of executing programs to non-local block data storage. In some situations, a block data storage service uses multiple server storage systems to reliably store block data that may be accessed over one or more networks by programs executing on other physical computing systems. Users may create block data storage volumes that are each stored by at least two of the server block data storage systems, and may initiate use of such volumes by one or more executing programs, such as in a reliable manner by enabling an automatic switch to a second volume copy if a first volume copy becomes unavailable. A group of multiple server block data storage systems that store block data volumes may in some situations be co-located at a data center, and programs that use volumes stored there may execute on other physical computing systems at that data center.