What is CAP Theorem?

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ก.ย. 2024
  • Continuing our System Design series, in this illustrated video we talk about the CAP theorem. We will learn what the CAP theorem is, what it means for a distributed system to be Consistent, Available, and Partition Tolerant. Also, we will look at some examples to get the proof of the CAP theorem. After watching this video, you will be able to answer the below questions:
    - What is CAP Theorem?
    - What is a Distributed System?
    - What is Consistency, Availability and Partition Tolerance?
    - Proof of CAP theorem.
    Resources:
    github.com/psy...
    codahale.com/y...
    System Design Series:
    • System Design 101
    Channel website:
    - roadmap.sh
    Discord Community:
    - / discord
    Find us on the internet:
    - / roadmapsh
    - github.com/kam...
    - / roadmapsh

ความคิดเห็น • 20

  • @omshreepal9174
    @omshreepal9174 4 หลายเดือนก่อน +4

    the level of example and explanation you gave ,🎩 off , sir....

  • @Best-Regions
    @Best-Regions ปีที่แล้ว +4

    Best and most visual explanation I've seen. Thank you

  • @cyclingdude7018
    @cyclingdude7018 3 ปีที่แล้ว +8

    Thanks Kamran! Love how you explain everything building up to the point without leaving us confused in the end.

  • @jasper5016
    @jasper5016 ปีที่แล้ว +3

    Always had difficulty understanding this concept. Thanks so much.

  • @cartrivia8379
    @cartrivia8379 2 ปีที่แล้ว +4

    Most important points at the last, In distributed system we can't avoid partition (network failure) , so system should be always partition tolerance, so now choice is always between either consistency or availability.

  • @onlycodingjeet
    @onlycodingjeet ปีที่แล้ว +2

    great explanation. Thank you

  • @mearn_ctaftsman
    @mearn_ctaftsman ปีที่แล้ว +2

    Crystal clear sir 🙏

  • @RetroFrequency
    @RetroFrequency 2 ปีที่แล้ว +2

    Great explanation!

  • @sparkestic1238
    @sparkestic1238 2 ปีที่แล้ว +2

    Great explanation

  • @surajitpradhan446
    @surajitpradhan446 ปีที่แล้ว +1

    Thank you so much

  • @JoyWithShorts
    @JoyWithShorts 8 หลายเดือนก่อน

    When to choose Consistency and when to choose Availability?

  • @anshulnagpal1479
    @anshulnagpal1479 3 ปีที่แล้ว +1

    In case of "Partition Tolerance"
    Cannot we achieve Both Consistency and Availability by having redundant connections in between System S1 and System S2. One setting could be having another System S3 that connects both S1 and S2. That way Both Systems are always connected either directly or indirectly.
    In fact in real world applications, we have Distributed Systems with more than 2 Nodes.

    • @roadmapsh
      @roadmapsh  2 ปีที่แล้ว +7

      It doesn't really matter how you connect the nodes. Partition is not only specific to network issues but the failure of node S2 is also going to be considered as partition - what if S2 itself is dead and can't receive or process any messages; it doesn't really matter how the nodes are connected in that case.
      You might find this article interesting:
      codahale.com/you-cant-sacrifice-partition-tolerance

  • @NguyenTuan-ek1pv
    @NguyenTuan-ek1pv 2 ปีที่แล้ว +2

    Good video

  • @mherify
    @mherify ปีที่แล้ว

    So what is the solution to this problem?

  • @nsandeep7574
    @nsandeep7574 ปีที่แล้ว +1

    smooth!

  • @anshulnagpal1479
    @anshulnagpal1479 3 ปีที่แล้ว

    BTW, What Software do you use for making dynamic presentations ?

    • @roadmapsh
      @roadmapsh  2 ปีที่แล้ว +1

      It's Keynote

  • @kamakshijayaraman3747
    @kamakshijayaraman3747 7 หลายเดือนก่อน

    thank you

  • @sagarmehta3515
    @sagarmehta3515 ปีที่แล้ว +1

    Great explanation