Event-Driven Serverless Function Orchestration via Dynamic Graph Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies for coordinating serverless functions lack efficient mechanisms to map events from external sources to serverless functions, leading to suboptimal execution and resource management, particularly in handling varying traffic loads and error conditions.

Innovation Solution

The implementation of a method and device that utilize function graphs to map events from external sources to serverless functions, allowing for sequential or concurrent execution of actions, with features like event filtering, transformation, and automatic resource management, enabling efficient execution and scaling of serverless functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If serverless functions are executed without efficient event mapping mechanisms, then resource management becomes suboptimal, but implementation complexity is reduced

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

Solution Approach 1:

The patent introduces an event mapping mechanism that acts as an intermediary between external event sources and serverless functions. This mapping layer translates events from external sources into appropriate function invocations, improving execution efficiency without requiring complex custom mapping logic in each function. The mapping mechanism centralizes the coordination logic, making the system more efficient while maintaining manageable complexity through abstraction.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The event mapping mechanism serves multiple functions: it routes events to appropriate functions, filters events based on criteria, transforms event data, and manages resource allocation. By consolidating these diverse functions into a single mapping layer, the system achieves high productivity without proportionally increasing overall system complexity.

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

2Productivity

If event mapping mechanisms are implemented to improve execution efficiency, then resource management improves, but device complexity increases

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

Solution Approach 1:

The event mapping mechanism is divided into distinct components: event reception, filtering, transformation, and function routing. Each component handles a specific aspect of event processing, which improves execution efficiency through specialized processing while keeping individual components simple and manageable. This segmentation allows the system to achieve high productivity without overwhelming complexity.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If sequential and concurrent execution of actions are supported, then handling varying traffic loads improves, but device complexity increases

Engineering Contradiction:
Improvetraffic load handlingVSAvoidexecution control complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The execution mechanism dynamically adjusts between sequential and concurrent action execution based on traffic load conditions. When traffic is light, actions execute sequentially to conserve resources. When traffic increases, the system automatically transitions to concurrent execution to handle the load. This dynamic adaptation improves versatility in handling varying traffic loads while the underlying execution engine manages the complexity of switching between modes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes execution parameters (sequential vs. concurrent mode) based on traffic load conditions. By adjusting the execution mode parameter dynamically, the system adapts to varying traffic requirements. The event mapping mechanism monitors load conditions and modifies execution parameters accordingly, improving adaptability while the parameter management abstraction keeps implementation complexity controlled.

Inventive Principle:
Principle #35Parameter changes

4Measurement precision

If event filtering and transformation are implemented, then execution precision improves, but device complexity increases

Engineering Contradiction:
Improveevent matching accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The event mapping mechanism performs filtering and transformation operations in advance, before events are routed to serverless functions. By pre-processing events to match desired criteria and transform them into the appropriate format, the system achieves high event matching accuracy. The preliminary processing is handled by the mapping layer, which maintains manageable complexity through centralized processing logic rather than requiring complex filtering in each function.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10915382B2Event-driven serverless function orchestration
Publication Date: 2021.02.09 HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
  • US10915382B2 patent drawing
  • US10915382B2 patent drawing
  • US10915382B2 patent drawing

AI summary

A computer-implemented method for processing serverless functions includes mapping a received event to an event state of a plurality of event states in a function graph according to a mapping rule, the function graph including one or more actions for the event state. A data package of a previous event state of the plurality of event states is filtered to generate a filtered data package, using a payload filter associated with the event state. The actions of the event state are executed, where the one or more actions satisfy the mapping rule. A modified data package is sent to a computer system to trigger executing one or more serverless functions associated with the executed one or more actions. The modified data package is based on a data package of the event and the filtered data package. One or more responses are received based on execution of the serverless functions.