Distributed Systems 3.3: Causality and happens-before

Sdílet
Vložit
  • čas přidán 27. 07. 2024
  • Accompanying lecture notes: www.cl.cam.ac.uk/teaching/212...
    Full lecture series: • Distributed Systems le...
    This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are not publicly available, but slides can be found on the course web page: www.cl.cam.ac.uk/teaching/212...

Komentáře • 31

  • @sociocritical
    @sociocritical Před 3 lety +18

    These lectures are great.
    Thank you very much.

  • @JosiahWarren
    @JosiahWarren Před rokem +1

    this was a god sent gem . I just binge watched your playlist

  • @junlonggao1872
    @junlonggao1872 Před 2 lety +9

    Still cannot believe we can study these for free

    • @jordy4630
      @jordy4630 Před 2 lety +2

      It's a shame information isn't accessible to everyone. Just imagine if everyone had access to all other lectures.

    • @guwenbin1
      @guwenbin1 Před 2 lety

      同意

  • @ihsannuruliman4005
    @ihsannuruliman4005 Před 7 měsíci +1

    The book is great but this video series explained 2x more clearly and I can resonate easily... maybe it's just because of the content type. Visual is still better to me.

  • @Visualmotionpro
    @Visualmotionpro Před 2 lety

    You are a hero! Thank you a lot for your awesome lectures!

  • @mostinho7
    @mostinho7 Před 11 měsíci +1

    3:00 why timestamps for event ordering might not always be reliable
    5:00 happens before relationship between events
    A happens before B if
    1. A happens before B on the same node
    2. A is the event that a message was sent and B is event that message was received on a different node
    3. Transitive property: There exists event C such that A happens before C and C happens before B then A happens before B
    8:10 what it means for events to be concurrent (can’t define a happens before relation between them, no partial order)

  • @andy_801
    @andy_801 Před rokem

    great series! clear n informative

  • @violahnnn
    @violahnnn Před 2 lety +1

    These lectures are great😃

  • @caseyyeow1649
    @caseyyeow1649 Před 2 lety

    Your lectures are very enlightening, tqvm.

  • @nikolay6700
    @nikolay6700 Před 3 lety +3

    Спасибо. Отличная лекция!

  • @mehdicharife2335
    @mehdicharife2335 Před rokem +2

    So, if my understanding was correct, if an event happened after another by a period of time that is smaller than the time it takes for light to travel between the two locations wherein the two events happened, we can safely infer that the first event did not cause nor influenced the second?

  • @correabuscar
    @correabuscar Před rokem

    11:11 that's great to know before reading Leslie Lamport's Time Clocks...

  • @alirezarohami6138
    @alirezarohami6138 Před rokem

    Thank you, Matrin. You're just awesome. (But since you mentioned relativity... I was waiting for the rabbit, i.e. entanglement)

  • @tiwaritejaswo
    @tiwaritejaswo Před rokem

    Too good

  • @ShubhamGuptaAmol
    @ShubhamGuptaAmol Před 2 měsíci

    If we assume that clocks for user A and B have been synchronized via NTP, how can there be any skew/time difference b/w them?

  • @fb-gu2er
    @fb-gu2er Před 3 lety +1

    Great lectures. I'm reading the book, "Designing Data-Intensive Applications". How much of a relation is there between these lectures and the book?

    • @guitarist_covers
      @guitarist_covers Před 3 lety +5

      The book goes more in-depth. I'd go through the videos first, and then check the book later.

    • @kleppmann
      @kleppmann  Před 2 lety +11

      There is a small amount of overlap. The book is mostly about databases, and only covers a bit on distributed systems. This course goes deeper on distributed systems (especially on algorithms), but doesn't really go into databases.

    • @MrAR7
      @MrAR7 Před 2 lety +2

      @@kleppmann which can be the reference book that matches close to the course?

    • @khaldrogo9451
      @khaldrogo9451 Před 2 lety

      @@MrAR7 He mentioned that in the very beginning. There are a few books to choose from.

  • @tangkhanhnguyen4543
    @tangkhanhnguyen4543 Před 2 lety

    Why do we use monotonic clock timestamps to compare 2 times cross difference nodes and we can ensure that t2 is greater than t1? Please correct me if I'm wrong.
    Thanks for the nice lecture

    • @jordy4630
      @jordy4630 Před 2 lety +3

      Monotonic is not a replacement for atomic clock. It is only useful in one node for measuring duration and solves the problem of clock synchronisation. Between different nodes you still have the problem. You don't know the clock skew that each node has or when was the last time that they did clock synchronisation (even knowing that doesn't help). Watch the clock synchronisation video.

  • @khaldrogo9451
    @khaldrogo9451 Před 2 lety

    1. What is this symbol called?
    2. If a -> b, then we can't always say that 100% a (weird symbol) b right? or is that a wrong assumption to make. Essentially, is the weird symbol always 100% implying causality or is it it implying a maybe causality?

  • @AlejandroDruetta
    @AlejandroDruetta Před 3 lety

    I have a doubt. At the end of the lecture, the logic conditional should not be: if a causes b, then does a happens before b?

    • @khaldrogo9451
      @khaldrogo9451 Před 2 lety +3

      It must be the case. If a causes b, then it must be that a happened before b. Think of it this way, if a message is received (b) by a node, it must be that the message was created (a) before it had to be received (b). Otherwise, there would be nothing to receive in case if it was never created.

  • @bobblah78
    @bobblah78 Před 3 lety +2

    The moon is made of cheese!