Serverless architecture efficiency: an exploratory study
This is an incremental study for cloud computing users, helping them choose between serverless and traditional architectures based on task characteristics.
The study compared serverless architecture (AWS Lambda) with Apache Spark (Amazon EMR) for parallel word-count tasks, finding that serverless achieved comparable performance in compute time and cost, with Lambda better for real-time computing and EMR for longer tasks.
Cloud service provider propose services to insensitive customers to use their platform. Different services can achieve the same result at different cost. In this paper, we study the efficiency of a serverless architecture for running highly parallelizable tasks to compare theses services in order to find the most efficient in term of performance and cost. More precisely, we look at the compute time and at the cost per task for a given task. The tasks studied is the count of the occurrence of a given word in a corpus. We compare the serverless architecture to the Apache Spark map reduce technique commonly used for this type of task. Using AWS Lambda for the serverless architecture and Amazon EMR for the Apache Spark map reduce, with similar compute power, we show that the serverless technique achieve comparable performance in term of compute time and cost. We observed that the lambda function is a great approach for real time computing, while EMR is preferable for task that require long compute time.