Profile-Guided Data Preloading for Virtualized Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large-scale data centers, the latency associated with inter-service data transfers can negatively impact the responsiveness of operations, particularly during phases like boot sequences and application initialization, due to the need to retrieve data from storage repository services.

Innovation Solution

Implementing a preload manager that generates and utilizes storage access profiles to proactively pre-load data from a storage repository service onto block storage devices, allowing compute instances to access pre-loaded data without relying on the repository service during execution phases, thereby reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If data is retrieved from storage repository service during execution phases, then data access is possible, but latency increases and system responsiveness deteriorates

Engineering Contradiction:
ImprovelatencyVSAvoidsystem responsiveness
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system performs preliminary data pre-loading into block storage devices before compute instances require the data during execution phases. The preload manager proactively transfers data from the storage repository service to block storage devices based on predicted access patterns, so that when compute instances need the data, it is already available locally, eliminating latency and improving system responsiveness.

Inventive Principle:
Principle #10Preliminary action

2Speed

If data is pre-loaded into block storage devices, then access speed improves, but storage infrastructure complexity increases

Engineering Contradiction:
Improvedata access speedVSAvoidstorage infrastructure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The block storage devices serve as an intermediary layer between the storage repository service and compute instances. Rather than having compute instances access data directly from the storage repository service, data is first transferred to block storage devices which then serve as a local cache, improving access speed while managing infrastructure complexity through this intermediate storage layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The preload manager automatically monitors access patterns and autonomously decides what data to pre-load into block storage devices without manual intervention. The system self-manages the pre-loading process by tracking which data is likely to be accessed and proactively transferring it, reducing the operational complexity of managing the storage infrastructure.

Inventive Principle:
Principle #25Self-service

3Productivity

If profile-based pre-loading is implemented, then operational efficiency improves, but monitoring and profile generation complexity increases

Engineering Contradiction:
Improveoperational efficiencyVSAvoidprofile generation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where the preload manager monitors actual data access patterns during compute instance execution and uses this information to refine and update access profiles. This feedback loop allows the system to learn from real usage patterns and continuously improve profile accuracy, enhancing operational efficiency while the automated nature of the feedback process manages the complexity of profile generation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The profile generation process is automated through the preload manager, which self-generates access profiles by monitoring and analyzing data access patterns without requiring manual profile creation. This self-service approach to profile generation improves operational efficiency while reducing the manual complexity involved in creating and maintaining access profiles.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11061584B2Profile-guided data preloading for virtualized resources
Publication Date: 2021.07.13 AMAZON TECH INC
  • US11061584B2 patent drawing
  • US11061584B2 patent drawing
  • US11061584B2 patent drawing

AI summary

Methods and apparatus for profile-guided preloading for virtualized resources are described. A block-level storage volume whose contents are to be populated via data transfers from a repository service is programmatically attached to a compute instance. An indication of data transfers from the repository to a block storage service implementing the volume is obtained, corresponding to a particular phase of program execution at the compute instance. A storage profile is generated, based at least in part on the indication of data transfers. The storage profile is subsequently used to pre-load data from the repository service on behalf of other compute instances.