Extensible Data Transfer Framework for Reusable Loaders and Savers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Creating data loaders and data savers for local and distributed data containers to and from various storage systems and formats is challenging due to numerous configurations, requiring a flexible and scalable infrastructure that can accommodate multiple data formats, storage systems, and container types.

Innovation Solution

A data transfer framework that uses a componentized approach with plug-ins to dynamically create data loaders and savers, allowing for reuse of components across different configurations, and implementing generic workflows with strongly typed interfaces to enhance modularity, reusability, and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple static loaders and savers are created for different configurations, then data transfer functionality is provided, but code complexity and maintenance difficulty increase

Engineering Contradiction:
Improvedata transfer functionalityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal data transfer framework where a single loader/saver infrastructure can handle multiple data formats, storage systems, and container types through configurable parameters and plug-in components. This eliminates the need to create separate static loaders and savers for each configuration, as the same core infrastructure adapts to different scenarios through configuration settings.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The framework segments the data transfer functionality into independent, reusable components including format handlers, storage system adapters, and container type support. Each component can be independently configured and combined, allowing the system to handle various configurations without increasing overall code complexity.

Inventive Principle:
Principle #1Segmentation

2Ease of manufacture

If a flexible framework with plug-ins is implemented, then code reusability and modularity improve, but initial development complexity increases

Engineering Contradiction:
Improvecode reusabilityVSAvoidframework structure
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The framework employs dynamic component composition where loaders and savers are constructed at runtime by assembling appropriate plug-in components based on the specific data transfer requirements. This dynamic approach maximizes code reusability as the same component library serves multiple configurations, while the framework structure remains manageable through standardized interfaces and assembly logic.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The framework introduces intermediary abstraction layers including format handlers, storage adapters, and container interfaces that mediate between the core data transfer engine and specific implementation details. These intermediaries standardize interactions and enable high-level components to work with various low-level implementations, improving reusability while keeping the framework structure organized and manageable.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If generic workflows with strongly typed interfaces are used, then type safety and performance are enhanced, but implementation complexity increases

Engineering Contradiction:
Improvetype safetyVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The framework uses strongly typed interface parameters to define data contracts between components. By specifying precise type requirements for data formats, storage systems, and container types, the framework ensures type safety at compile-time while the generic workflow engine handles the complexity of parameter validation and type matching, preventing implementation complexity from escalating.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11138031B2Framework for authoring data loaders and data savers
Publication Date: 2021.10.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11138031B2 patent drawing
  • US11138031B2 patent drawing
  • US11138031B2 patent drawing

AI summary

Implementing static loaders and savers for the transfer of local and distributed data containers to and from storage systems can be difficult because there are so many different configurations of output formats, data containers and storage systems. Described herein is an extensible componentized data transfer framework for performant and scalable authoring of data loaders and data savers. Abstracted local and distributed workflows drive selection of plug-ins that can be composed by the framework into particular local or distributed scenario loaders and savers. Reusability and code sparsity are maximized.