Spot-Instanced Database for Bulk Data Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Bulk load operations in database management systems can be lengthy and disruptive, impacting system performance due to the direct loading of large amounts of data, which may overwhelm the database engine's resources.

Innovation Solution

Implementing a bulk load service that uses dynamically instanced database instances configured for reduced locking modes and compatible storage formats, allowing data to be loaded into a secondary collection and then integrated into the target database, thereby reducing the load on the primary database engine and shortening bulk loading times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If bulk load operations are performed directly on the target database, then data can be added to the database, but the operation becomes lengthy and disruptive to system performance

Engineering Contradiction:
Improvebulk loading speedVSAvoidsystem performance stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A spot-instanced database is introduced as an intermediary between the bulk data source and the target database. The spot instance receives bulk data, processes it, and then transfers it to the target database, isolating the disruptive bulk load operation from the production system. This mediator approach allows high-speed bulk loading without directly impacting target database performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The bulk load operation is segmented into separate phases: data loading into the spot instance, data processing/validation in the spot instance, and selective transfer to the target database. This segmentation allows the bulk load to proceed independently in the spot instance while the target database remains available for normal operations.

Inventive Principle:
Principle #1Segmentation

2Productivity

If bulk load operations are performed on the target database, then data can be loaded, but the operation impacts other services and causes disruptions

Engineering Contradiction:
Improvedata loading throughputVSAvoidservice disruption
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The spot-instanced database serves as a mediator that absorbs the harmful effects of bulk loading. By offloading the bulk load operation to the spot instance, the target database and its services are protected from disruptions, while the spot instance handles the high-throughput data loading independently.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of directly modifying the target database during bulk loads, the system creates a copy (spot instance) that replicates the necessary database functionality. This copy receives and processes bulk data, then selectively synchronizes changes back to the target database, preventing service disruptions.

Inventive Principle:
Principle #26Copying

3Loss of time

If a spot-instanced database is used for bulk loading, then bulk loading time is reduced and service disruption is minimized, but additional database instances and resources are required

Engineering Contradiction:
Improvebulk loading timeVSAvoiddatabase instance configuration
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system dynamically adjusts resource allocation parameters by provisioning spot instances with specific hardware and software configurations optimized for bulk loading operations. These parameter changes enable efficient bulk load processing while maintaining flexibility in resource management.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The database system dynamically provisions and deprovisions spot instances based on bulk load requirements. The spot instances are created only when needed, configured with appropriate resources, and then deallocated after the bulk load operation completes, providing dynamic resource management that balances complexity with performance.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10592493B1Spot-instanced bulk data uploading
Publication Date: 2020.03.17 AMAZON TECH INC
  • US10592493B1 patent drawing
  • US10592493B1 patent drawing
  • US10592493B1 patent drawing

AI summary

A database engine may maintain a collection of data on a first storage device. A workflow manager node may receive a request to bulk load data into the collection. The workflow manager may instruct a control plane node to allocate and configure a secondary database node and to make operable thereon a second database using a second storage device. Data may be bulk loaded to the second storage device using a schema and storage unit format compatible with the collection of data. Storage units from the second storage device may be transferred to the first storage device and integrated into the collection of data.