specifjcation and implementation of replicated list
play

Specifjcation and Implementation of Replicated List The Jupiter - PowerPoint PPT Presentation

. . . . . . . . . . . . . . . . Specifjcation and Implementation of Replicated List The Jupiter Protocol Revisited (OPODIS2018) Hengfeng Wei , Yu Huang, Jian Lu Nanjing University December 17, 2018 Hengfeng Wei (Nanjing


  1. . . . . . . . . . . . . . . . . Specifjcation and Implementation of Replicated List — The Jupiter Protocol Revisited (OPODIS’2018) Hengfeng Wei , Yu Huang, Jian Lu Nanjing University December 17, 2018 Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 / 32

  2. This was proposed as a conjecture in a PODC paper [Attiya et al., 2016] . . . . . . . . . . . . . . The Main Contribution . satisfjes the weak list specifjcation [Attiya et al., 2016] b . a David A. Nichols et al. (1995). “High-latency, Low-bandwidth Windowing in the Jupiter Collaboration System”. In: Proceedings of the 8th Annual ACM Symposium on User Interface and Software Technology . UIST ’95. ACM, pp. 111–120. b Hagit Attiya et al. (2016). “Specifjcation and complexity of Principles of Distributed Computing . PODC ’16. ACM, pp. 259–268. Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 / 32 The Jupiter protocol [Nichols et al., 1995] a for replicated list collaborative text editing”. In: Proceedings of the 2016 ACM Symposium on

  3. . . . . . . . . . . . . . . . The Main Contribution satisfjes the weak list specifjcation [Attiya et al., 2016] b . a David A. Nichols et al. (1995). “High-latency, Low-bandwidth Windowing in the Jupiter Collaboration System”. In: Proceedings of the 8th Annual ACM Symposium on User Interface and Software Technology . UIST ’95. ACM, pp. 111–120. b Hagit Attiya et al. (2016). “Specifjcation and complexity of Principles of Distributed Computing . PODC ’16. ACM, pp. 259–268. Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 / 32 The Jupiter protocol [Nichols et al., 1995] a for replicated list collaborative text editing”. In: Proceedings of the 2016 ACM Symposium on This was proposed as a conjecture in a PODC paper [Attiya et al., 2016] .

  4. . . . . . . . . . . . . . . . Outline 1. Why do we care about replicated list? 2. What is the weak list specifjcation weak ? 3. How does the Jupiter protocol work? 4. How to prove that Jupiter satisfjes weak ? Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 / 32

  5. . . . . . . . . . . . . . . . Outline 1. Why do we care about replicated list? 2. What is the weak list specifjcation weak ? 3. How does the Jupiter protocol work? 4. How to prove that Jupiter satisfjes weak ? Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 / 32

  6. . . . . . . . . . . . . . . . . Outline 1. Why do we care about replicated list? 3. How does the Jupiter protocol work? 4. How to prove that Jupiter satisfjes weak ? Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 / 32 2. What is the weak list specifjcation A weak ?

  7. . . . . . . . . . . . . . . . . Outline 1. Why do we care about replicated list? 3. How does the Jupiter protocol work? 4. How to prove that Jupiter satisfjes weak ? Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 / 32 2. What is the weak list specifjcation A weak ?

  8. . . . . . . . . . . . . . . . . . Outline 1. Why do we care about replicated list? 3. How does the Jupiter protocol work? Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 / 32 2. What is the weak list specifjcation A weak ? 4. How to prove that Jupiter satisfjes A weak ?

  9. . . . . . . . . . . . . . . . . . . Replicated List Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 4 / 32

  10. . . . . . . . . . . . . . . . . . Replicated Collaborative Text Editing Systems Replicas are required to respond to user operations immediately. Updates are propagated to other replicas asynchronously. Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . 5 / 32 . . . . (a) Google Docs (b) Apache Wave (c) Wikipedia (d) L T EX Editor A

  11. . . . . . . . . . . . . . . . . . . Replicated list object: to model the core functionality Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 6 / 32 Ins ( a, p ) : Insert a at position p . Del ( p ) : Delete the element at position p . Read : Return the list.

  12. . . . . . . . . . . . . . . . . . . Weak List Specifjcation Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 7 / 32

  13. . . . . . . . . . . . . . . . . . . Specify a global property on all states across the system. Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 8 / 32 Defjnition (Weak List Specifjcation A weak [Attiya et al., 2016] ) Informally, A weak requires the ordering between elements that are not deleted to be consistent across the system.

  14. . . . . . . . . . . . . . . . . . . Defjnition (Pairwise State Compatibility Property) Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . 9 / 32 . . . . . We show that A weak can be rephrased as For any pair of list states, there cannot be two elements a and b such that a precedes b in one state but b precedes a in the other. σ 0 : ab σ 1 : ba σ 0 : ab a b σ 1 : ba

  15. . . . . . . . . . . . . . . . . . . Jupiter Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . . . . . . . . . 10 / 32

  16. . User . . . . . . . . . . . Jupiter adopts the client-server architecture [Nichols et al., 1995] : Issue Ops . Respond Immed. Client FIFO Updates Server FIFO Updates Other Clients Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . . . . . . . . . . . . . . . . . . 11 / 32 . . . . . . . . . . . . . ( n + 1) replicas ≜ ( n ) Client + (1) Server C 1 C 2 C 3 S

  17. . . . . . . . . . . . . . Jupiter adopts the client-server architecture [Nichols et al., 1995] : User . Issue Ops Respond Immed. Client FIFO Updates Server FIFO Updates Other Clients Hengfeng Wei (Nanjing University) Replicated List (Jupiter) December 17, 2018 . 11 / 32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ( n + 1) replicas ≜ ( n ) Client + (1) Server C 1 C 2 C 3 S 1 1 1 2 3 3 2 2 4 4 4 3 − − − − − − − − − − − → − − − − − − − → − − − − − − − →

  18. . efecte Ins efect efgecte Del Ins efecte (The server is not drawn.) efgece Challenge: Confmicts caused by concurrent operations . . . . . Del efgect . efgect December 17, 2018 Replicated List (Jupiter) (Nanjing University) Hengfeng Wei Solution: Operational Transformation (OT) [Ellis and Gibbs, 1989] efgect Del efecte Ins efect efgecte Del Ins efecte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 / 32

  19. . efecte Ins efect efgecte Del Ins efecte (The server is not drawn.) efgece Challenge: Confmicts caused by concurrent operations . . . . . Del efgect . efgect December 17, 2018 Replicated List (Jupiter) (Nanjing University) Hengfeng Wei Solution: Operational Transformation (OT) [Ellis and Gibbs, 1989] efgect Del efecte Ins efect efgecte Del Ins efecte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 / 32 C 1 C 2

  20. . efgece . . . . . . Challenge: Confmicts caused by concurrent operations (The server is not drawn.) efecte efecte efgecte efect Ins Del efgect . efgect December 17, 2018 Replicated List (Jupiter) (Nanjing University) Hengfeng Wei Solution: Operational Transformation (OT) [Ellis and Gibbs, 1989] efgect Del efecte Ins efect efgecte Del Ins efecte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 / 32 C 1 C 2 o 1 = Ins ( f, 1) o 2 = Del (5)

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