In Dynamo-style replication systems, such as Akka Cluster and Riak Core, distributed query execution can be hard to get right. To ensure that computations are highly-available and fault-tolerant, systems like these usually push the burden to the programmer to ensure that operations commute and idempotent, which provide resilience from ordering and replay anomalies. During this talk we look at applying two techniques together, deterministic dataflow programming and conflict-free replicated data types, to provide an alternative programming model which alleviates this burden. Using these techniques together not only eases this burden, but also provides additional benefits such as optimistic replication of computation results; trading lower latency for staler results; and incrementally updating computations.
Talk objectives:
Discuss on-going academic research and how to related it to industry.
Target audience:
Language enthusiasts, Riak users, distribution computation fanatics.
Slides
Christopher Meiklejohn loves distributed systems and programming languages. Previously, Christopher worked at Basho Technologies, Inc. on the distributed key-value store, Riak. Christopher develops a programming language for distributed computation, called Lasp. Christopher is currently a Ph.D. student at the Université Catholique de Louvain in Belgium. GitHub:
cmeiklejohn
Twitter:
@cmeik