4 ms·
What are some interesting use cases for CRDTs beyond collaborative (text) editing?
by keewee7 5y ago
What are some interesting use cases for CRDTs beyond collaborative (text) editing?
- lijogdfljk 5y agoI mean.. data, right? I'm trying to learn about CRDTs for complex, nested data structures. The use cases are for.. well, nested data, anything you'd use BTree's and etc for over distributed systems. A big thing i'm currently learning with them is to write a content addressable system with a more forgiving merge policy between parties. Yea i often see people nitpick CRDT about user intention, and where it should be `ADBC` or `ABCD`, but in my case i'm focusing on multi-device, not multi-user - and even in multi-user it's still best-in-breed when you are designing away from centralization. I'm still struggling to learn the more complex approaches to CRDT. So many resources focus on the low hanging fruit of CRDT. Grow counters, basic text editing, etc. I need to build the full suite of data structures; maps, sets, lists, etc.
- sunny--tech 5y agoQuite a few data stores use CRDTs under the hood. Redis uses CRDTs for active-active architectures [1] and for some of their native data structures [2]. Riak also uses them in their data store [3]. And looks like PayPal might use them for consensus purposes (I found this while looking up the Riak talk so I haven't actually watched it) [4] 1: https://redis.com/blog/diving-into-crdts/ https://redis.com/blog/diving-into-crdts/ 2: https://redis.com/videos/active-active-geo-distribution-redis-enterprise/ https://redis.com/videos/active-active-geo-distribution-redi... 3: https://www.youtube.com/watch?v=f20882ZSdkU&ab_channel=ErlangSolutions https://www.youtube.com/watch?v=f20882ZSdkU&ab_channel=Erlan... 4: https://www.infoq.com/presentations/crdt-production/ https://www.infoq.com/presentations/crdt-production/
- deleted 5y ago[deleted]