Pavlo BaronDistributed systems -playfully illustrated
Pavlo Baronpavlo.baron@codecentric.de             @pavlobaron
Example: clocks
Example: clocksComputer clocks are inconsistent.Time is relative.Global clocks are weak.Logical / vector clocks allow toke...
Example: consistent hashing
Example: consistent hashingIt is necessary to localize data onchanging infrastructure with ~O(1)efficiency and minimal reo...
Example: gossip
Example: gossipNotification of data and infrastructurechanges must happen asynchronously.Notifications occure in unpredict...
Example: hinted handoff
Example: hinted handoffNodes and whole network segmentscan fail.In order to prevent data lost anothernodes can buffer fore...
Example: quorum
Example: quorumSoftened consistency still needsassurance that data has been reliablyread and writtenWith „W > 0.5 V” und “...
Example: election
Example: electionWhen all nodes are equal, there is stillneed to choose a coordinator for someprocessesElection allows to ...
Example: failure detection
Example: failure detectionReliable / accurate failure detectorsare impossible in an asynchronoussystemOptimistic failure d...
Example: partition tolerance / no split brain
Example: partition tolerance / no split brainWhen the overall network suddenly getspartitioned, nodes must not think theya...
Lets wrap it up
Distributed Systems – attributes & difficultiesConcurrencyVarying clocksIndependent failuresDifferent hardware & OSsEasy l...
Distributed Systems – considerations & toolboxAvailability vs. consistency, latencyAsynchronous message passingReplication...
Thank you
Images originate from          istockphoto.com,       Wikipedia, Flickr and             product pagesor generated through ...
Theoretical aspects of distributed systems - playfully illustrated (@pavlobaron)
Upcoming SlideShare
Loading in …5
×

Theoretical aspects of distributed systems - playfully illustrated (@pavlobaron)

3,004 views

Published on

Slides of my talk I did a couple of times already

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,004
On SlideShare
0
From Embeds
0
Number of Embeds
107
Actions
Shares
0
Downloads
0
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Theoretical aspects of distributed systems - playfully illustrated (@pavlobaron)

  1. 1. Pavlo BaronDistributed systems -playfully illustrated
  2. 2. Pavlo Baronpavlo.baron@codecentric.de @pavlobaron
  3. 3. Example: clocks
  4. 4. Example: clocksComputer clocks are inconsistent.Time is relative.Global clocks are weak.Logical / vector clocks allow tokeep track of changes without a needto synchronize time
  5. 5. Example: consistent hashing
  6. 6. Example: consistent hashingIt is necessary to localize data onchanging infrastructure with ~O(1)efficiency and minimal reorganizationUsing ring hashing with fixed rulesallows to hit the moving target
  7. 7. Example: gossip
  8. 8. Example: gossipNotification of data and infrastructurechanges must happen asynchronously.Notifications occure in unpredictableorder and repetition.Nodes gossip in order to share thesechanges, information is sent piggyback
  9. 9. Example: hinted handoff
  10. 10. Example: hinted handoffNodes and whole network segmentscan fail.In order to prevent data lost anothernodes can buffer foreign data andhand it off later to reanimated nodes
  11. 11. Example: quorum
  12. 12. Example: quorumSoftened consistency still needsassurance that data has been reliablyread and writtenWith „W > 0.5 V” und “R + W > V” rulesconsistency can be reliably softened
  13. 13. Example: election
  14. 14. Example: electionWhen all nodes are equal, there is stillneed to choose a coordinator for someprocessesElection allows to decide which nodeplays a certain role (ring, bully)
  15. 15. Example: failure detection
  16. 16. Example: failure detectionReliable / accurate failure detectorsare impossible in an asynchronoussystemOptimistic failure detection allows tosuspect a node of having failed, excludeit, while still hoping it will come back
  17. 17. Example: partition tolerance / no split brain
  18. 18. Example: partition tolerance / no split brainWhen the overall network suddenly getspartitioned, nodes must not think theyare all alone while still doing their jobPessimistic tolerance eventually meansdata lost, optimistic means weakerconsistency
  19. 19. Lets wrap it up
  20. 20. Distributed Systems – attributes & difficultiesConcurrencyVarying clocksIndependent failuresDifferent hardware & OSsEasy localizationSoftened consistencyImperfect security
  21. 21. Distributed Systems – considerations & toolboxAvailability vs. consistency, latencyAsynchronous message passingReplicationCaching & holding backEquality of nodesOptimismNo global state, no single points of errorFault toleranceHashing, no sequencingConcept recycling
  22. 22. Thank you
  23. 23. Images originate from istockphoto.com, Wikipedia, Flickr and product pagesor generated through public online generators

×