Step Editor Data Preparation Signature Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large-scale web applications with millions or billions of records face computational intensity issues during data re-computation, leading to slow application response times and prolonged wait times for operator-users.

Innovation Solution

A distributed computing platform like Apache Spark is utilized to perform sequenced data preparation operations efficiently, using a step editor for data preparation that generates signatures for cached results, allowing for the reuse of transformation results and optimizing data partitioning and caching strategies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data re-computation is performed on large scale web applications with millions or billions of records, then different operation results can be obtained, but computational intensity increases leading to slow application response times

Engineering Contradiction:
Improveability to try different operations on dataVSAvoidapplication response time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs data preparation operations in advance and caches the transformation results. When users want to evaluate different operations, the cached results are reused instead of re-computing from scratch. This preliminary action resolves the contradiction by preparing data beforehand so that subsequent operations can be performed quickly without extensive re-computation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates cached copies of transformation results that can be reused across multiple operations. Instead of re-computating the entire data set each time a user wants to try different operations, the system uses these pre-computed copies, significantly reducing computational intensity and response time while maintaining the ability to perform various operations.

Inventive Principle:
Principle #26Copying

2Productivity

If data preparation operations are performed on large scale web applications, then data transformation results are obtained, but computational overhead is high

Engineering Contradiction:
Improvedata preparation operation efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system performs data preparation operations in advance and caches the transformation results. When users want to evaluate different operations, the cached results are reused instead of re-computing from scratch. This preliminary action resolves the contradiction by preparing data beforehand so that subsequent operations can be performed quickly without extensive re-computation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system discards redundant re-computation by recovering and reusing previously computed transformation results from cache. Instead of repeatedly performing the same computationally intensive operations, the system recovers cached results and reuses them, significantly reducing computational overhead while maintaining productivity.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10642815B2Step editor for data preparation
Publication Date: 2020.05.05 DATAROBOT INC
  • US10642815B2 patent drawing
  • US10642815B2 patent drawing
  • US10642815B2 patent drawing

AI summary

Using a step editor for data preparation includes receiving an indication of a user input with respect to at least some of a set of sequenced data preparation operations on a set of data. It further includes generating, using one or more processors, a signature based at least in part on the set of sequenced data preparation operations, references to the set of data, and the user input. It further includes using the generated signature to determine whether there exists a cached result associated with the set of sequenced data preparation operations, the references to the set of data, and the user input. It further includes based at least in part on the determination, obtaining a data traversal program representing a result associated with the set of sequenced operations, the references to the set of data, and the user input. It further includes providing output based at least in part on the result represented by the obtained data traversal program.