e ff ortless eventual consistency
play

E ff ortless Eventual Consistency Gossip, CRDTs, and Weave Mesh - PowerPoint PPT Presentation

E ff ortless Eventual Consistency Gossip, CRDTs, and Weave Mesh weave works - Outline Theory Practice Extension weave works - Outline Theory Gossip CRDT Practice Weave Mesh Weave Net Extension


  1. E ff ortless Eventual Consistency Gossip, CRDTs, and Weave Mesh weave works -

  2. Outline • Theory • Practice • Extension 
 weave works -

  3. Outline • Theory 
 Gossip 
 CRDT • Practice 
 Weave Mesh 
 Weave Net • Extension 
 User data types 
 Strong consistency weave works -

  4. Motivating Example 0 Increment-only counter weave works -

  5. Increment Motivating Example 0 Increment-only counter weave works -

  6. Increment Motivating Example 1 Increment-only counter weave works -

  7. Motivating Example 1 Increment-only counter weave works -

  8. Increment Motivating Example 1 Increment-only counter weave works -

  9. Increment Motivating Example 2 Increment-only counter weave works -

  10. Motivating Example 2 Increment-only counter weave works -

  11. Increment Increment Motivating Example 2 Increment-only counter Increment Increment weave works -

  12. Increment Increment Motivating Example ☹ Increment-only counter Increment Increment weave works -

  13. Increment Increment Motivating Example 😰 Increment-only counter Increment Increment weave works -

  14. Increment Increment Motivating Example 2 Increment-only counter Increment Increment weave works -

  15. Increment Increment Motivating Example 2 Increment-only counter Increment Increment weave works -

  16. Increment Increment Motivating Example 3 Increment-only counter Increment Increment weave works -

  17. Increment Motivating Example 3 Increment-only counter Increment Increment weave works -

  18. Increment Motivating Example 3 Increment-only counter Increment Increment weave works -

  19. Increment Motivating Example 4 Increment-only counter Increment Increment weave works -

  20. Increment Motivating Example 4 Increment-only counter Increment weave works -

  21. Increment Motivating Example 4 Increment-only counter Increment weave works -

  22. Increment Motivating Example 5 Increment-only counter Increment weave works -

  23. Increment Motivating Example 5 Increment-only counter weave works -

  24. Increment Motivating Example 5 Increment-only counter weave works -

  25. Increment Motivating Example 6 Increment-only counter weave works -

  26. Motivating Example 6 Increment-only counter weave works -

  27. Motivating Example 6 Increment-only counter weave works -

  28. weave works -

  29. weave works -

  30. 1x 1x weave works -

  31. weave works -

  32. 1x weave works -

  33. 1x weave works -

  34. ☹ ☹ ☹ ☹ ☹ ☹ ☹ 1x weave works -

  35. Theory: Gossip weave works -

  36. Gossip solves… • Information dissemination in irregular networks • Unreliable links • Dynamic, changing topologies weave works -

  37. Gossip requires… • Periodic and pairwise communication • Frequency of interaction ≪ individual message latency • Redundancy in delivered information weave works -

  38. Gossip requires… • Periodic and pairwise communication • Frequency of interaction ≪ individual message latency • Redundancy in delivered information weave works -

  39. Gossip modes • Push — if we know X, every round, tell a peer about X • Pull — every round, ask a peer about all possible X • Push/pull — push for some cycles, then pull for some cycles weave works -

  40. Rumor weave works -

  41. Rumor weave works -

  42. Rumor weave works -

  43. Rumor weave works -

  44. Rumor weave works -

  45. Rumor weave works -

  46. Anti-entropy weave works -

  47. Anti-entropy weave works -

  48. Anti-entropy weave works -

  49. Anti-entropy weave works -

  50. Anti-entropy gossip weave works -

  51. Aggregate weave works -

  52. 0 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  53. 0 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  54. Increment 0 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  55. Increment 1 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  56. 1 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  57. t=1 1 0 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  58. t=2 1 1 0 Motivating Example 0 0 0 Increment-only counter 0 0 0 weave works -

  59. t=3 1 1 0 Motivating Example 1 1 0 Increment-only counter 0 0 0 weave works -

  60. t=4 1 1 0 Motivating Example 1 1 0 Increment-only counter 1 1 0 weave works -

  61. t=5 1 1 0 Motivating Example 1 1 0 Increment-only counter 1 1 1 weave works -

  62. t=6 1 1 0 Motivating Example 1 1 1 Increment-only counter 1 1 1 weave works -

  63. t=7 1 1 1 Motivating Example 1 1 1 Increment-only counter 1 1 1 weave works -

  64. t=7 1 1 1 Motivating Example 1 1 1 Increment-only counter 1 1 1 weave works -

  65. Motivating Example 0 Increment-only counter weave works -

  66. Motivating Example 0 Increment-only counter weave works -

  67. Motivating Example 1 Increment-only counter weave works -

  68. Motivating Example 2 Increment-only counter weave works -

  69. Motivating Example 2 Increment-only counter weave works -

  70. 1 1 1 Motivating Example 1 2 1 Increment-only counter 🤕 1 1 1 weave works -

  71. 👒 Motivating Example Increment-only counter weave works -

  72. Increment 👒 Motivating Example 0 Increment-only counter weave works -

  73. Increment 👒 Motivating Example 0 Increment-only counter weave works -

  74. Increment 👒 Motivating Example 1 Increment-only counter weave works -

  75. Read 👒 Motivating Example 1 Increment-only counter weave works -

  76. 😧 😧 😧 Motivating Example 👒 😧 😧 x Increment-only counter 😧 😧 😧 weave works -

  77. Theory: CRDT weave works -

  78. CRDTs solve… • Shared state in a distributed system • Provide availability (A) • Provide partition tolerance (P) weave works -

  79. weave works -

  80. weave works -

  81. CRDTs require... • Operations that are • Associative — A • (B • C) = (A • B) • C • Commutative — A • B = B • A • Idempotent* — A • A = A weave works -

  82. CRDTs require... • Operations that are • Associative — A • (B • C) = (A • B) • C • Commutative — A • B = B • A • Idempotent* — A • A = A 😍 weave works -

  83. CRDT • Conflict-free • Replicated • Data • Type weave works -

  84. CmRDT • Commutative Replicated Data Type • Operation-based: transmit the op itself — "edge trigger" • Assumes reliable, exactly-once delivery (ha!) weave works -

  85. 
 0 Motivating Example 0 Increment-only counter CmRDT 0 weave works -

  86. 
 0 0 0 Motivating Example 0 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  87. 
 Increment 0 0 0 Motivating Example 0 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  88. 
 Increment 1 0 0 Motivating Example 0 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  89. 
 1 0 0 Motivating Example 0 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  90. 
 1 0 0 A++ Motivating Example 0 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  91. 
 1 0 0 A++ Motivating Example 1 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  92. 
 1 0 0 Motivating Example 1 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  93. 
 1 0 0 Motivating Example A++ 1 0 0 Increment-only counter CmRDT 0 0 0 weave works -

  94. 
 1 0 0 Motivating Example A++ 1 0 0 Increment-only counter CmRDT 1 0 0 weave works -

  95. 
 1 0 0 Motivating Example 1 0 0 Increment-only counter CmRDT 1 0 0 weave works -

  96. 
 1 0 0 Read Motivating Example 1 0 0 Increment-only counter CmRDT 1 0 0 weave works -

  97. 
 1 0 0 Read Motivating Example Σ 1 0 0 = 1 Increment-only counter CmRDT 1 0 0 weave works -

  98. CvRDT • Convergent Replicated Data Type • State-based: transmit the complete state — "level trigger" • Achieve idempotency in fragile networks • All CmRDT can be expressed as CvRDT (Shapiro et. al.) weave works -

  99. 
 1 0 0 Motivating Example 1 0 0 Increment-only counter CmRDT 1 0 0 weave works -

  100. 
 1 0 0 Increment Motivating Example 1 0 0 Increment-only counter CmRDT 1 0 0 weave works -

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend