FaaS Function Placement Based on Local Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing FaaS systems do not support the co-location of data and function execution, leading to suboptimal performance and resource usage due to remote data access, which is slower than local access.
Innovation Solution
A method for handling function execution in a FaaS system that initiates execution on a node where the required data is stored, ensuring local access and avoiding remote access, with options for load balancing and scaling based on data location and subscriber-specific data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If functions are executed on nodes in a distributed FaaS system, then system scalability and reliability are improved, but data access time increases due to remote access requirements
Solution Approach 1:
The patent applies local quality by allowing different nodes in the distributed FaaS system to have different data storage capabilities. Specifically, some nodes are equipped with local storage for function data while others rely on remote access. This enables nodes with local storage to execute functions faster without compromising the overall distributed architecture's scalability and reliability.
2Reliability
If data is stored remotely in external databases, then system reliability is improved through state externalisation, but performance deteriorates due to increased data access latency
Solution Approach 1:
The patent introduces an intermediary mechanism by allowing function data to be cached or replicated at intermediate nodes within the distributed system. These intermediate nodes act as mediators between the external databases and the function execution nodes, reducing access latency while maintaining the reliability benefits of externalized state storage.
3Adaptability or versatility
If functions remotely access data from external databases, then resource distribution across the cluster is improved, but resource usage efficiency decreases
Solution Approach 1:
The patent applies preliminary action by pre-loading or caching function data at nodes that are likely to execute those functions. This anticipatory approach allows the system to maintain good resource distribution while avoiding the energy costs of repeated remote data access, as the data is already positioned locally when needed.
Data Source
AI summary
There is provided a method for handling execution of a function in a function-as-a-service (FaaS) system. According to the method, in response (200) to a trigger on a first node of the FaaS system for execution of a function, execution of the function is initiated (206) on the first node of the FaaS system if data to be accessed for the execution is stored on the first node of the FaaS system and/or execution of the function is initiated (210) on a second node of the FaaS system if the data to be accessed for the execution is stored on the second node of the FaaS system.


