On-Demand Code Execution System with Rollback and Deduplication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In on-demand code execution environments, ensuring that tasks are executed only a desired number of times is challenging due to the rapid and distributed nature, leading to potential multiple executions and increased computing resource allocation, especially when in-code verifications are used to check execution states, causing delays and inefficiencies.
Innovation Solution
Implementing an on-demand code execution environment that maintains execution records and uses execution identifiers to ensure tasks are executed only as intended, with rollback mechanisms for erroneous executions, reducing the need for unnecessary resource allocation and improving efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If in-code verifications are used to check execution states, then task execution accuracy is improved, but execution delay increases and efficiency decreases
Solution Approach 1:
The patent introduces an execution record data store as an intermediary component that maintains authoritative execution records externally. Instead of using in-code verifications that pause execution to check states, the system uses execution identifiers to query this separate data store, which returns verification results without blocking the execution flow. This mediator approach provides accurate execution state verification while minimizing execution delays.
2Speed
If distributed execution is implemented for rapid processing, then processing speed is improved, but execution control reliability deteriorates
Solution Approach 1:
The patent implements a feedback mechanism where execution records are maintained in a centralized data store that tracks the execution state of each task. When tasks are distributed across multiple computing devices for rapid processing, each execution attempt is recorded and verified against this centralized feedback source. The system queries the execution record data store to determine whether a task has already been executed, ensuring reliable execution control even in a distributed environment where tasks may be replicated across multiple nodes.
3Reliability
If multiple execution attempts are made to ensure task completion, then execution reliability is improved, but resource allocation increases
Solution Approach 1:
The patent applies preliminary action by maintaining execution records in advance in a centralized data store before actual task execution occurs. When a task is submitted for execution, the system first queries the execution record data store to check if the task has already been executed. This preliminary check prevents redundant resource allocation for tasks that have already completed, while still allowing multiple execution attempts when necessary. The execution identifier serves as a preliminary identifier that enables this advance verification, ensuring that computing resources are allocated only when necessary.
Data Source
AI summary
Systems and methods are described for implementing execution guarantees in an on-demand code execution system or other distributed code execution environment, such that the on-demand code execution system attempts to execute code only a desired number of times. The on-demand code execution system can utilize execution identifiers to distinguish between new and duplicative requests, and can decline to allocate computing resources for duplicative requests. The on-demand code execution system can further detect errors during execution, and rollback the execution to undo the execution's effects. The on-demand code execution system can then restart execution until the code has been execute the desired number of times.


