Toward a Programmable Cloud: CALM Foundations and Open Challenges
Major shifts in computing platforms are often accompanied by new programming models. The public cloud emerged a decade ago, but we have yet to see a new generation of programming platforms adopted in response. All the traditional challenges of distributed programming and data are present in the cloud, only they are now faced by the general population of software developers. Added to these challenges are new desires for “serverless” computing, including consumption-based pricing and autoscaling.
This talk will highlight principles for cloud programming that I have explored with colleagues over the past decade, including the CALM Theorem and languages like Dedalus and Bloom that encourage monotonic coordination-free consistency via logic and lattices. The Anna “any-scale” KVS will be presented as a petri dish for the potential of these ideas and many remaining challenges.
I will conclude by sketching new work in Berkeley’s Hydro project which aims to “evolutionize” and expand our earlier work, building on recent results from colleagues in verified lifting and in client-centric, mixed consistency.
|Slides (POPL Keynote 21.pdf)
Joe Hellerstein is the Jim Gray Professor of Computer Science at the University of California, Berkeley. His research focuses on data-centric systems and the way they drive computing. Hellerstein is an ACM Fellow, a Sloan Research Fellow and the recipient of three ACM-SIGMOD Test of Time awards. In 2010, MIT’s Technology Review magazine included his work on cloud programming in their TR10 list of the 10 technologies “most likely to change our world”, and Fortune Magazine included him in their list of 50 smartest people in tech. In addition to his academic work, Hellerstein has been involved in a number of startup companies including Trifacta, which brought academic research on data wrangling to market.