Execution Environment Selection for ETL Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing ETL tools often bind entire data processing sequences to a single execution environment, leading to suboptimal execution due to varying efficiencies across different environments, such as map-reduce clusters and SQL databases, which are better suited for specific operations.

Innovation Solution

A system and method that select the most suitable execution environment for each operation in a sequence based on resource consumption metrics, allowing each operation to be converted into executable code for its optimal environment, and coordinating execution across multiple environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the entire data processing sequence is bound to a single execution environment, then the system complexity is reduced and ease of operation is improved, but the execution efficiency and resource utilization deteriorate due to suboptimal performance in environments not specifically suited for certain operations

Engineering Contradiction:
Improveease of operationVSAvoidexecution efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the data processing sequence into individual operations, each of which can be independently assigned to the most suitable execution environment. This allows the system to break down the monolithic approach of binding entire sequences to single environments, enabling selective optimization of each operation based on its specific requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects execution environments for each operation based on real-time metrics such as resource consumption, data format compatibility, and processing efficiency. This dynamic allocation replaces the static binding approach, allowing the system to adaptively choose optimal environments without requiring complex manual configuration.

Inventive Principle:
Principle #15Dynamics

2Productivity

If different execution environments are selected for each operation to optimize performance, then the execution efficiency and resource utilization are improved, but the system complexity and coordination requirements increase

Engineering Contradiction:
Improveexecution efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary component that automatically manages the selection and coordination of different execution environments. This intermediary handles the complexity of environment selection by evaluating operations against predefined criteria and metrics, shielding users from the underlying complexity while enabling optimized multi-environment execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements self-service mechanisms where execution environments are automatically selected and configured based on operation characteristics and performance metrics. This automation reduces the need for manual intervention and complex configuration management, allowing the system to handle its own complexity internally while presenting a simplified interface to users.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If operations are converted to executable code for multiple execution environments, then the adaptability and versatility are improved, but the conversion complexity and processing time increase

Engineering Contradiction:
ImproveadaptabilityVSAvoidconversion time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary conversion of operations to executable code formats suitable for multiple execution environments before actual execution. By pre-converting operations and caching the executable code, the system avoids repeated conversion overhead during runtime, thus reducing conversion time while maintaining adaptability across different environments.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9052956B2Selecting execution environments
Publication Date: 2015.06.09 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9052956B2 patent drawing
  • US9052956B2 patent drawing
  • US9052956B2 patent drawing

AI summary

Disclosed herein are techniques for selecting execution environments. Each operation in a sequence of operations is implemented using a selected execution environment. Each operation is converted into code executable in the selected execution environment. If some operations in the sequence were implemented in different execution environments, execution of the operations is coordinated.