Distributed File Storage Service with Modular Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed file systems face challenges in maintaining high availability and durability while supporting large-scale, concurrent access to files across thousands of clients, particularly due to limitations in industry-standard file system interfaces that struggle with asynchronous interactions, component failures, and network delays.

Innovation Solution

A modular architecture for a distributed file storage service that separates metadata and data into distinct subsystems, using replication techniques like erasure coding and consensus-based state machines to ensure sequential consistency and durability, while allowing for independent scaling and failover of access, metadata, and storage nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If industry-standard file system interfaces are used, then compatibility and ease of operation are improved, but reliability and consistency deteriorate due to asynchronous interactions, component failures, and network delays

Engineering Contradiction:
Improveease of operationVSAvoidreliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces a distributed file system interface layer that acts as an intermediary between standard file system operations and the underlying distributed storage system. This interface translates standard file operations into distributed operations that maintain consistency models, handle failures, and manage asynchronous interactions across network partitions, thereby preserving both ease of operation and reliability

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If storage capacity is increased to support more clients, then productivity is improved, but device complexity increases

Engineering Contradiction:
ImproveproductivityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the distributed file storage system into independent modular components including metadata servers, data servers, and clients. Each component can be independently scaled and managed, allowing the system to support more clients and increase productivity while avoiding exponential complexity growth through structured decomposition

Inventive Principle:
Principle #1Segmentation

3Reliability

If data is replicated across multiple nodes for durability, then reliability is improved, but loss of time increases due to synchronization overhead

Engineering Contradiction:
ImprovereliabilityVSAvoidloss of time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements periodic replication where data is replicated to multiple nodes asynchronously rather than synchronously for every operation. This periodic replication strategy maintains durability by ensuring eventual consistency while reducing the time penalty associated with real-time synchronization across all replicated nodes

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS9779015B1Oversubscribed storage extents with on-demand page allocation
Publication Date: 2017.10.03 AMAZON TECH INC
  • US9779015B1 patent drawing
  • US9779015B1 patent drawing
  • US9779015B1 patent drawing

AI summary

In response to receiving a write request directed to a particular logical block of a storage object, a page of free space (sufficient to accommodate the payload of the write request, but smaller in size than the logical block) of a particular extent that has been selected to store contents of the logical block is allocated. The current size of the extent is smaller than the combined sizes of logical blocks that are mapped to the extent. The page is modified in accordance with a payload indicated in the write request. In response to a subsequent write request directed to the particular extent, a determination is made that the particular extent would violate a free space threshold criterion if the payload of the write request were accommodated, and an extent expansion operation is initiated.