Transactions: From Local Atomicity to Atomicity in the Cloud

David Lomet


Atomicity is a fundamental concept in computer science. Initially

it was defined as an abstraction to be used in a local context. But

over time, its use has expanded or scaled as application programmers

have come to rely on it. This reliance is based on atomicity’s ability to

make concurrent systems understandable and applications much simpler

to program. Atomicity has multiple origins, but it can be fairly said that

Brian Randell’s Reliability Project at the University of Newcastle in the

1970’s played a significant early role in defining the atomicity abstraction

and building an early prototype to realize it. This paper starts by

sketching the Newcastle contribution and goes on to explore how atomicity

has been stretched to deal with clusters of processors. The challenge

today is to deal well with systems of vast scale, as exemplified by the

enormous data centers of current cloud services providers. We sketch a

new and promising approach to this challenge.


Publication typeArticle
Published inLecture Notes on Computer Science 6875
PublisherSpringer Verlag
> Publications > Transactions: From Local Atomicity to Atomicity in the Cloud