Abstract

The rise of serverless architecture enables developers to use unlimited auto-scalable serverless functions on-demand without the worries of operating a massive computer cluster made of many computers. Moreover, developers only need to pay for the resources consumed by serverless functions during execution at millisecond-granularity. As a result, many researchers try to use high parallelism provided by serverless platforms to reduce the execution time of applications. Although serverless architecture can reduce the computation time of applications, it also increases the I/O time because exchanging data among serverless functions relies on remote storage services. To reduce the time for exchanging data, we propose a method that uses Remote Direct Memory Access (RDMA) to speed up accessing remote storage services. We choose Knative as our serverless platform to avoid vendor lock-in because Knative is built on top of Kubernetes. Our approach is based on Apache Crail. Apache Crail is an open-sourced distributed data store designed for RDMA. Before accessing Apache Crail, applications have to create Crail clients and RDMA queue pairs with Apache Crail; this creation is time-consuming. However, every serverless function has to create a Crail client and RDMA queue pairs because serverless functions are stateless and cannot share Crail clients and RDMA queue pairs, causing massive overhead. To solve the above problem, we build a Kubernetes PersistentVolume backed by Apache Crail to share Crail clients and RDMA queue pairs among serverless functions to save time create and destroy Crail clients and RDMA queue pairs repeatedly.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.