PORTALS: Teleporting smart edge services to a serverless future
Our proposal is to develop a programming system called “Portals” that combines the built-in trust of cloud data stream processing and the flexibility of message-driven decentralized programming systems. The unique design of Portals enables constructing systems composed of multiple services, each built in isolation, so atomic processing and data-protection rights are uniformly maintained. Portals’ innovative approach lies in encoding data ownership, processing atomicity within data in transit, and exposing them to the programmer as core programming elements, namely “atoms” and “portals”. This will simplify the engineering of complex systems by multiple independent teams and enable a new form of serverless computing where any stateful service can be offered as a utility across cloud and edge.
Enabling trust in distributed services is not an easy task. Trust comes in different forms and concrete challenges. For example, data systems can be trusted for their data-protection guarantees (e.g., GDPR), allowing their users to access or delete their data or revoke access at any time. Trust can also be manifested in safety or consistency guarantees, enabling exactly-once processing semantics or serializable transactions. All such examples of implementing trust are extremely hard problems in practice that go way beyond the reach and expertise of system engineers, especially when implementing distributed services with multiple copies of the data being accessed simultaneously. Portals is a first-of-a-kind programming system that materializes all aspects of trust already within its programming and execution model. Programs written in portals can scale and evolve over time while guaranteeing that all of the properties and invariants that manifest “trust” are constantly satisfied.
Another important driving need behind Portals is that of flexibility, accessibility and ease of use. A programming system is meant to simplify the work of its developers substantially. Serverless computing has been one of the rising concepts in cloud computing technologies in the last few years; that is, a model where developers can build and deploy their applications without having to worry about the underlying infrastructure. However, current serverless platforms often have limitations in terms of the types of applications that can be built and the ability to interface with persistent state. Portals aim to address these limitations by providing a message-driven decentralized programming system that allows developers to build and deploy a wide range of applications easily. The system’s unique design enables developers to focus on the business logic of their applications and the interdependencies while being oblivious of the decentralized underlying infrastructure or transactional mechanisms that are employed in the background.
Overall, Portals is a unique programming system that aims to simplify the work of developers while also enabling trust in distributed services. Its innovative approach combines the scalability, security and reliability of cloud data stream processing with the flexibility of actor programming systems. It enables a new form of serverless computing where any stateful service can be offered as a utility across cloud and edge environments.
The researchers in the team represent the KTH School of Electrical Engineering and Computer Science and RISE Research Institutes of Sweden, Digital Systems Division, Computer Systems Lab.
Portals Website: https://www.portals-project.org/
Assistant Professor Division of Software and Computer Systems EECS school at KTH, Working group Cooperate, Co-PI: PORTALS - Teleporting smart edge services to a serverless future, , Former Co-PI: Resilient Decentralized Computing: Enabling Trust and Simplicity in Smart Edge Services, Digital Futures Facultyparisc@kth.se
Associate Professor, School of Electrical Engineering & Computer Science at KTH, Co-PI: PORTALS - Teleporting smart edge services to a serverless future, Former Co-PI: Resilient Decentralized Computing: Enabling Trust and Simplicity in Smart Edge Services, Digital Futures Faculty+46 8 790 81 20