Resources about CRDTs and scalability
Publications about CRDTs:
- Paulo Sérgio Almeida, Ali Shoker, Carlos Baquero: Delta State Replicated Data Types. CoRR abs/1603.01529 (2016)
- Sebastian Burckhardt, Alexey Gotsman, Hongseok Yang, Marek Zawirski: Replicated Data Types: Specification, Verification, Optimality. POPL 2014 http://research.microsoft.com/apps/pubs/default.aspx?id=201602
- Marc Shapiro, Nuno M. Preguiça, Carlos Baquero, Marek Zawirski: Conflict-Free Replicated Data Types. SSS 2011: 386-400 http://link.springer.com/chapter/10.1007%2F978-3-642-24550-3_29
- Annette Bieniusa, Marek Zawirski, Nuno M. Preguiça, Marc Shapiro, Carlos Baquero, Valter Balegas, Sérgio Duarte: An optimized conflict-free replicated set. CoRR abs/1210.3368 (2012) http://arxiv.org/abs/1210.3368
- Annette Bieniusa, Marek Zawirski, Nuno M. Preguiça, Marc Shapiro, Carlos Baquero, Valter Balegas, Sérgio Duarte: Brief Announcement: Semantics of Eventually Consistent Replicated Sets. DISC 2012: 441-442 http://link.springer.com/chapter/10.1007%2F978-3-642-33651-5_48
- Marc Shapiro, Nuno M. Preguiça, Carlos Baquero, Marek Zawirski: Convergent and Commutative Replicated Data Types. Bulletin of the European Association for Theoretical Computer Science (EATCS), Number 104, June 2011. http://albcom.lsi.upc.edu/ojs/index.php/beatcs/article/view/78
- Marc Shapiro, Nuno M. Preguiça, Carlos Baquero, Marek Zawirski: A comprehensive study of Convergent and Commutative Replicated Data Types. INRIA Technical Report RR-7506, January 2011. http://hal.inria.fr/inria-00555588
CRDT-based systems:
- ANTIDOTE. https://github.com/SyncFree/antidote
- Sebastian Burckhardt, Daan Leijen, Manuel F ̈ahndrich, and Mooly Sagiv. Eventually consistent transactions. In Proc. ESOP, pages 67–86, 2012. http://research.microsoft.com/pubs/158085/ecr-esop2012.pdf
- https://hal.inria.fr/hal-01158370v1 Write Fast, Read in the Past: Causal Consistency for Client-side Applications.
Riak:
- Russell Brown, Zeeshan Lakhani, Paul Place: Big(ger) sets: decomposed delta CRDT sets in Riak. W. on the Principles and Practice of Consistency for Distributed Data. https://doi.org/10.1145/2911151.2911156
- Sean Cribbs and Russell Brown. Data structures in Riak. In Riak Conference (RICON), San Francisco, CA, USA, oct 2012.Docs for Riak: http://docs.basho.com/riak/latest/
- Riak DT: Basho's library of CRDTs in Erlang. Includes ORSWOT and a Map. https://github.com/basho/riak_dt
- Bryan Fink: Distributed computation on dynamo-style distributed storage: riak pipe, Erlang Workshop '12 http://dl.acm.org/citation.cfm?id=2364497
- Christopher Meiklejohn: Riak PG: distributed process groups on dynamo-style distributed storage, Erlang Workshop '13 http://dl.acm.org/citation.cfm?id=2505309
Programming Models:
- Christopher Meiklejohn and Peter Van Roy. Lasp: A Language for Distributed, Coordination-Free Programming. In 17th International Symposium on Principles and Practice of Declarative Programming (PPDP 2015). July 14-16, 2015, Siena, Italy.
- Lindsey Kuper, Ryan R. Newton. LVars: lattice-based data structures for deterministic parallelism. Proceedings of the 2nd ACM SIGPLAN workshop on Functional high-performance computing, Pages 71-84. http://www.cs.indiana.edu/~lkuper/papers/lvars-fhpc13.pdf
Proofs and Verification:
- Peter Zeller, Annette Bieniusa, and Arnd Poetzsch-Heffter. Formal specification and verification of CRDTs. In Formal Techniques for Distributed Objects, Components, and Systems, pages 33–48. Springer, 2014. http://link.springer.com/chapter/10.1007%2F978-3-662-43613-4_3
CRDT implementations:
- CRDT reference implementations in Erlang: https://github.com/lasp-lang/types
- Riak DT: Basho's library of CRDTs in Erlang. Includes ORSWOT and a Map. https://github.com/basho/riak_dt
- Carlos Baquero. Delta-enabled CRDTs. https://github.com/CBaquero/delta-enabled-crdts
- Jonas Boner. Server-managed CRDTs based on Akka. https://github.com/jboner/akka-crdt
- Peter Bourgon. Roshi: a CRDT system for timestamped events. https://github.com/soundcloud/roshi/blob/master/README.md, May 2014.
- David Brooks. Shopping around with CRDTs at Whisk. https://skillsmatter.com/skillscasts/5838-shopping-around-with-crdts-at-whisk, December 2014. Whisk, a startup that understands online recipes and makes it easy to buy their ingredients.
- Sebastian Burckhardt, Daan Leijen, Manuel F ̈ahndrich, and Mooly Sagiv. Eventually consistent transactions. In Proc. ESOP, pages 67–86, 2012. http://research.microsoft.com/pubs/158085/ecr-esop2012.pdf
- Reid Draper. Knockbox, an eventual consistency toolkit. In Clojure/West, San Jose, CA, USA, March 2011. https://github.com/reiddraper/knockbox
- Kyle Kingsbury. aphyr / meangirls Convergent Replicated Data Types. On github, April 2012. https://github.com/aphyr/meangirls
- Sander Mak. Facebook announces Apollo at QCon NY 2014. http://branchandbound.net/blog/conferences/2014/06/facebook-announces-appolo-qcon/, June 2014.
- Patrik Nordwall. Akka data replication https://github.com/patriknw/akka-data.
- Kresten Krab Thorup. vectormap, March 2011. https://github.com/trifork/vectormap/blob/master/erlang/src/vmap.erl
CRDT Applications:
- Shared Medication Record (FMK) http://www.ssi.dk/English/HealthdataandICT/The%20National%20eHealth%20Authority/FMK.aspx
- plumtree http://plumlife.com