Software Containers for Data Science Workload Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing data science ecosystem faces challenges in efficiently supporting experimental workloads due to the need for specialized and dedicated resources, leading to increased technical costs and reduced opportunities for resource sharing and algorithm reuse.

Innovation Solution

Implementing software containers that encapsulate the entire runtime environment, including dependencies and configuration files, allowing for portable and isolated execution of data science workloads across different environments, and automating deployment through a microservice intake and pipeline.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dedicated servers and specialized hardware are used for data science workloads, then reliability and isolation of experimental environments are improved, but device complexity and technical costs increase

Engineering Contradiction:
Improveenvironmental isolationVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the data science environment into isolated container instances, each providing a self-contained experimental environment with its own dependencies and configuration. This segmentation achieves environmental isolation without requiring dedicated physical servers, as multiple containers share the underlying infrastructure while maintaining logical separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a container instance as an intermediary layer between the underlying computing infrastructure and the data science workload. This container instance mediates resource access and environment provisioning, eliminating the need for direct dedicated hardware while maintaining reliability and isolation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If dedicated servers are provisioned for each data science experiment, then environmental isolation is improved, but productivity and resource sharing opportunities decrease

Engineering Contradiction:
Improveenvironmental isolationVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The container instance architecture provides universal environments that can be reused across multiple experiments and workloads. Instead of dedicated servers for each experiment, the system provisions container instances that can be dynamically allocated and shared, enabling multiple data science teams to utilize the same underlying infrastructure with proper isolation.

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

Solution Approach 2:

The patent merges multiple container instances onto a single underlying server infrastructure, combining resources that would otherwise require separate dedicated hardware. This consolidation improves resource utilization and productivity while maintaining environmental isolation through container boundaries.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If specially configured hardware is provided for each software dependency, then reliability of software execution is improved, but device complexity and costs increase

Engineering Contradiction:
Improvesoftware execution consistencyVSAvoidconfiguration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The container instance segments the software execution environment, encapsulating each software dependency within its own isolated context. This segmentation ensures that each software component executes consistently within its designated environment without requiring specially configured hardware for each dependency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates portable copies of the software runtime environment within container instances, including all necessary dependencies and configurations. This copying approach eliminates the need for specially configured hardware by replicating the execution environment software-defined, ensuring consistency across different physical infrastructures.

Inventive Principle:
Principle #26Copying

4Reliability

If virtual machines are used for isolation, then environmental separation is improved, but resource usage efficiency deteriorates

Engineering Contradiction:
Improveenvironmental isolationVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system uses container instances to segment the software execution environment at the process level rather than requiring full virtual machine isolation. This segmentation provides sufficient environmental isolation for data science workloads while avoiding the overhead of virtual machine hypervisors and separate operating systems, thereby improving resource efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The container instance provides localized isolation only where needed for software dependency management, rather than implementing global isolation at the operating system level as virtual machines do. This local quality approach maintains environmental separation for critical software components while allowing efficient resource sharing at the system level.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10572226B2Methods, systems, and portal using software containers for accelerating aspects of data analytics application development and deployment
Publication Date: 2020.02.25 AON GLOBAL OPERATIONS LTD (SINGAPORE BRANCH)
  • US10572226B2 patent drawing
  • US10572226B2 patent drawing
  • US10572226B2 patent drawing

AI summary

The present disclosure relates to methods and systems for accelerating the development and distribution of data science workloads, including a consistent, portable and pre-configured data science workspace for development of data science containers allowing for the creation of a standardized, modular and reusable library of data science containers that can be maintained, extended and reused in a clear and repeatable manner. The containers may be submitted to a build and deployment process that ensures consistency across multiple environments in terms of the application code and the operating system environment. Runtime execution may be managed through the authoring of definitions which detail aspects of how the workload should operate within a certain environment.