Pre-fetching UDF Data in Serverless Worker Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Serverless computing environments face significant latency issues due to the need to move data from storage nodes to worker nodes for execution, as the requisite data often does not reside on the same node as the worker node executing the User Defined Functions (UDFs), leading to inefficient task provisioning.

Innovation Solution

Implementing a data provisioning method where the master node analyzes data requirements and resource availability to pre-fetch necessary data onto eligible worker nodes before task assignment, reducing the need for data retrieval during execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is moved from storage nodes to worker nodes for UDF execution, then task execution can proceed, but execution latency increases significantly

Engineering Contradiction:
Improvetask execution speedVSAvoidexecution latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary data provisioning by pre-fetching required data from storage nodes to worker nodes before UDF execution is scheduled. The master node analyzes upcoming UDF tasks, determines their data requirements, and triggers data transfer operations in advance, so that when a worker node is assigned a task, the required data is already available locally, eliminating execution latency.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If data is pre-fetched onto worker nodes before task assignment, then execution latency is reduced, but system complexity increases

Engineering Contradiction:
Improveexecution latencyVSAvoiddata provisioning system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The master node implements a feedback mechanism by monitoring worker node status, task queue conditions, and data storage locations. It continuously analyzes this feedback information to dynamically determine which data should be pre-fetched to which worker nodes, optimizing the data provisioning process without requiring complex manual configuration or centralized data management infrastructure.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP4155936B1Provisioning using pre-fetched data in serverless computing environments
Publication Date: 2024.07.17 CISCO TECHNOLOGY INC
  • EP4155936B1 patent drawingFigure 1
  • EP4155936B1 patent drawingFigure 2
  • EP4155936B1 patent drawingFigure 3

AI summary

A method is provided. The method comprises receiving a user defined function, UDF; analyzing the UDF for characterizing information regarding provisioning required in order to enable execution of the UDF, the characterizing information including at least a location of data needed by the UDF; determining, based on the characterizing information, a plurality of eligible worker nodes capable of executing the UDF; generating and transmitting a pre-fetch command to one or more of the eligible worker nodes, the pre-fetch command generated such that the one or more of the eligible worker nodes each retrieve and store a pre-fetched UDF data before the UDF has been assigned for execution; and assigning the UDF to the one or more of the eligible worker nodes for execution.