Skip to main content

PORTALS: Teleporting smart edge services to a serverless future

About the project
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 and processing atomicity within data in transit and exposing them to the programmer as core programming elements, namely “atoms” and “portals”.  Not only will this simplify the engineering of complex systems by multiple independent teams, but it will also enable a new form of serverless computing where any stateful service can be offered as a utility across cloud and edge.

Background
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 substantially simplify the work of its developers. 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 with ease. 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, enabling a new form of serverless computing where any stateful service can be offered as a utility across cloud and edge environments.

Crossdisciplinary collaboration
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/

Contacts

Photo of Paris Carbone

Paris Carbone

Assistant Professor at the division of Software and Computer Systems at EECS school at KTH, Working group Cooperate, Co-PI of project Resilient Decentralised Computing: Enabling Trust and Simplicity in Smart Edge Services, Co-PI of project PORTALS: Teleporting smart edge services to a serverless future, Digital Futures Faculty

parisc@kth.se
Photo of Philipp Haller

Philipp Haller

Associate Professor, School of Electrical Engineering & Computer Science at KTH, Co-PI of project Resilient Decentralized Computing: Enabling Trust and Simplicity in Smart Edge Services, Co-PI of project PORTALS: Teleporting smart edge services to a serverless future, Digital Futures Faculty

+46 8 790 81 20
phaller@kth.se