Data Storage Flush Views for Durable, Low-Latency Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing block-based storage systems face issues with data durability and availability due to failures in server nodes or common control planes, leading to significant storage capacity loss and high recovery latencies across multiple locations.

Innovation Solution

A data storage system with multiple head nodes and data storage sleds that replicate and flush data across mass storage devices, utilizing a local control plane to manage storage operations independently, ensuring high durability and low latency access by storing data in head nodes and replicating to another head node and multiple sleds, with a zonal control plane for volume assignment and load balancing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored across multiple devices in multiple locations to increase durability, then data durability is improved, but recovery latency increases due to data being located across multiple locations

Engineering Contradiction:
Improvedata durabilityVSAvoidrecovery latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The storage system is segmented into multiple independent storage nodes distributed across different locations, each capable of storing and managing data locally. This segmentation allows data to be divided into chunks stored across nodes, improving durability while enabling parallel recovery operations that reduce overall recovery latency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Data is pre-replicated across multiple storage nodes before any failure occurs. This preliminary action ensures that redundant copies are already in place, so when a failure happens, recovery can immediately begin by accessing pre-positioned replicas rather than needing to retrieve data from distant locations, thereby reducing recovery latency.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If a common control plane is used to manage data in multiple locations, then system management is simplified, but a failure of a component of the common control plane may impact a large quantity of storage capacity

Engineering Contradiction:
Improvesystem management complexityVSAvoidstorage availability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The control plane is segmented into distributed control components embedded in each storage node rather than a single centralized controller. Each node can independently manage its local data and make decisions, eliminating the single point of failure while maintaining manageable complexity through standardized node behavior.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Critical control functions are extracted from a centralized control plane and distributed to individual storage nodes. This extraction removes the vulnerability of centralized control while preserving system-wide coordination through peer-to-peer communication between nodes.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If extensive networks are used to move data between multiple locations, then data distribution capability is improved, but high latencies occur for data recovery

Engineering Contradiction:
Improvedata distribution capabilityVSAvoiddata recovery latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system implements local quality by maintaining data replicas in geographically distributed storage nodes with local access capabilities. This allows data to be accessed from the nearest available replica, reducing network travel time and recovery latency while maintaining the ability to distribute data across extensive networks.

Inventive Principle:
Principle #3Local quality

4Productivity

If a server node and multiple storage nodes are used, then storage scalability is improved, but a failure of one or more server nodes may result in a large amount of storage capacity being rendered unusable

Engineering Contradiction:
Improvestorage scalabilityVSAvoidstorage availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system extracts the control and data management functions from centralized server nodes and embeds them directly in storage nodes. This creates a decentralized architecture where storage nodes can operate independently, allowing scalability while eliminating the vulnerability of server node failures affecting large amounts of storage capacity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12443349B2Data system with flush views
Publication Date: 2025.10.14 AMAZON TECH INC
  • US12443349B2 patent drawing
  • US12443349B2 patent drawing
  • US12443349B2 patent drawing

AI summary

A data storage system includes a head node and mass storage devices. The head node is configured to flush data stored in a storage of the head node to a set of the mass storage devices of the data storage system. A head node may flush both current version data and point-in-time version data to the set of mass storage devices. Also, the data storage system maintains an index that indicates storage locations of data for particular portions of a volume before and after the data is flushed to the set of mass storage devices. In some embodiments an index includes a current version reference for a volume or portion of a volume and one or more point-in-time snapshot references.