Understand RAFT without breaking your brain

Sdílet
Vložit
  • čas přidán 6. 05. 2023
  • RAFT is a distributed consensus algorithm used by many databases like CockroachDB, Mongo, Yugabyte etc. In this video, understand RAFT simply and get this important piece in your system design arsenal.
    #systemdesign #database #computerscience

Komentáře • 70

  • @vinayp1478
    @vinayp1478 Před 8 měsíci +24

    This is the best, most concise video on RAFT! Thanks!

  • @JaySalunke-xs4dd
    @JaySalunke-xs4dd Před 6 dny +2

    bro ur video is so awesome like explaining the concept deeply and keeping it short too like that. examples are very much good considering all scenarios

  • @zimeckus7639
    @zimeckus7639 Před rokem +19

    I see that there are not many views on your channel inspite of the fact that your content is great. I think your videos target the niche tech audience who like to go into nitty gritty of things. Curious people like me, who just want straightforward technical knowhow. I just wanted to let you know that keep at it, don't have a motivation on making it big on CZcams. Just do it for your heart's content and passion like you already do. I am sure you will be rewarded eventually.
    I like the new style of editing with after effects, but I would recommend this type of editing to only explain complex topics (Like what you did with RAFT) and stick to your old drawing board + facecam style for your normal videos they are much much better + you don't have to use gifs or stock videos to explain stuff. I like your straightforward style of editing its unique.
    I really like your content I would appreciate if you make videos more frequenty like once a week, with minimal compromise on quality. I know its hard with editing, thumbnail, reserach, writing and all. But see to it that you increase upload frequency even if a little bit, because your videos motivates me to learn more about the topics you cover and I learn more in general and I am sure many people do so too.

    • @core_dump
      @core_dump  Před 10 měsíci

      Thanks for your feedback!! It means a lot! There are no videos now because I have moved houses and am in the process of getting my setup up. There are a lot of videos already in the pipeline... I agree with you on the editing style, I made this video in After Effects as it was too hot to shoot my face, but I will mostly be making videos with facecam

  • @ankitmalik6781
    @ankitmalik6781 Před 8 měsíci +3

    Hope you get more reach, great content

  • @manfredwurst8769
    @manfredwurst8769 Před 6 měsíci

    Excellent video with great graphics!

  • @omersaeed8917
    @omersaeed8917 Před 2 měsíci +3

    The best explanation I have ever seen of the subject. Keep the good work up 🎉

  • @ruyiyao4434
    @ruyiyao4434 Před 6 měsíci

    Great video! Thanks!

  • @hunter110783
    @hunter110783 Před 5 měsíci

    Superb explanation!!

  • @andybarbarian
    @andybarbarian Před měsícem

    Great video! Really helped me out, thanks :)

    • @core_dump
      @core_dump  Před měsícem +1

      Glad to be of help! Thanks!

  • @johnboy14
    @johnboy14 Před 3 měsíci +1

    Very nice

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

    Excellent video, made reading the extended raft paper much easier!

  • @monishchhadwa777
    @monishchhadwa777 Před 4 měsíci

    Very well explained SIR!
    Thanks much :)

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

    Great explanation, thanks!

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

    awesome explanation, thank you so much!! helped a lot with understanding how to implement my university project :D

    • @core_dump
      @core_dump  Před 2 měsíci +1

      Glad to hear! Your university is teaching a lot of good things then. My college was just theoretical.

  • @ukaszorpik3913
    @ukaszorpik3913 Před 5 měsíci

    Thank you 🧡

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

    This was a very nice, to the point explanation of how RAFT works. Thank you!

  • @_Arunvfx
    @_Arunvfx Před 6 měsíci +2

    Thank you 👍❤️ helped me lot for my exam preparation

  • @bluesteel1
    @bluesteel1 Před 25 dny

    Nice video brother

  • @Osevv
    @Osevv Před měsícem

    Great video!

  • @maheshwarang4000
    @maheshwarang4000 Před měsícem

    thanx bro, one of the best explanations on raft

  • @vinitsunita
    @vinitsunita Před 6 měsíci +2

    It looks similiar to 2 phase commit protocol which is used for distributed transactions

  • @utubeprem7298
    @utubeprem7298 Před 3 měsíci +4

    It does not explain leader selection

  • @prathameshbhat9816
    @prathameshbhat9816 Před 8 měsíci +1

    Nice

  • @backtashmohammadi3824
    @backtashmohammadi3824 Před 7 měsíci

    wow, my prof talked about 1 hour, i didn't understand it. But you explained it in few minutes. Thank you

    • @core_dump
      @core_dump  Před 6 měsíci

      Great to know that.. Thanks!!

  • @ashutoshdwivedi6264
    @ashutoshdwivedi6264 Před 3 měsíci

    explained like a cake walk. it really helped. thanks ❤

  • @eugenbecker9154
    @eugenbecker9154 Před 8 měsíci +1

    Thank you very much, you helped me with my Distributed Systems exam 😊

  • @zeeshanbhat2484
    @zeeshanbhat2484 Před 4 měsíci

    Love you man, this is the best explanation on RAFT .. If you have any documented resource on this can you please share that.

    • @core_dump
      @core_dump  Před 4 měsíci

      Thanks! There was this blog post I wrote many moons ago: ankushc.hashnode.dev/raft-taming-distributed-consensus
      I don't even remember what I wrote in that so... best of luck :p

  • @atorrres
    @atorrres Před 8 měsíci +1

    great video!

  • @AbhinavGunwant
    @AbhinavGunwant Před rokem +5

    kya mast samjhaya bhai

  • @shivam6565
    @shivam6565 Před 3 měsíci

    Beautifully explained. Thanks for sharing bro

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

      Thanks! Do consider sharing the video with you peers!

  • @JaySalunke-xs4dd
    @JaySalunke-xs4dd Před 6 dny

    best video

  • @AP-eh6gr
    @AP-eh6gr Před 2 měsíci +1

    very high quality presentation

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

      Thanks! Although ... this was probably the only video I made or will make with this much effort on presentation. It takes way to much time with my super noob after effects skills :P

  • @nijuyonkadesu
    @nijuyonkadesu Před 2 měsíci +1

    nais video bhai, unique style too

  • @davithov
    @davithov Před 8 měsíci

    Instead of sending prev index, isn't it possible that the concrete follower will check to see if its current index has a diff with its previous index which is > 1?

  • @emanuelesalonico2984
    @emanuelesalonico2984 Před 4 měsíci

    Great explanation sir

  • @mahirbathija8552
    @mahirbathija8552 Před 6 měsíci +1

    legend

  • @koya-_-
    @koya-_- Před 7 měsíci +2

    thanks bud 😭

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

    this broke my brain.

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

      Oh No!...sorry for that ... but what doesn't kill you makes you stronger I guess...

  • @nothingspecial2018
    @nothingspecial2018 Před rokem

    what you use to make videos ?

    • @core_dump
      @core_dump  Před rokem +1

      After Effects... This is actually the video I made to learn After Effects from scratch.

  • @Sibearian_
    @Sibearian_ Před rokem +2

    Won't it be faster if the 7:10 disconnected node gives its last known log instead of doing this?

    • @user-dc9zo7ek5j
      @user-dc9zo7ek5j Před rokem +1

      I was thinking the same. I took a look on the raft consensus page they have an interactive visual representation of the algo, and I don't see such backwards checking, it was adding it without checking every item.

    • @Sibearian_
      @Sibearian_ Před rokem

      @@ankush_chatterjee thank you

    • @user-dc9zo7ek5j
      @user-dc9zo7ek5j Před rokem

      @@ankush_chatterjee Thank you for the explanation, I checked out the article, and the GeeksForGeeks article on the same topic (the paragraph above the "Safety" section): "The AppendEntries RPC will iteratively send the RPCs with reduced Index Numbers so that a match is found."
      Still the question was why is it made like so, because if few nodes missed 1000 transactions, then the load will be dangerous, just like RAID failures putting pressure on the main disc during rebuild and thus can fail.

    • @vinhnguyenthe7862
      @vinhnguyenthe7862 Před 9 měsíci +3

      in raft whitepaper, the author also thought of this, this was written:
      "If desired, the protocol can be optimized to reduce the
      number of rejected AppendEntries RPCs. For example,
      when rejecting an AppendEntries request, the follower
      7 can include the term of the conflicting entry and the first
      index it stores for that term. With this information, the
      leader can decrement nextIndex to bypass all of the con-
      flicting entries in that term; one AppendEntries RPC will
      be required for each term with conflicting entries, rather
      than one RPC per entry. In practice, we doubt this opti-
      mization is necessary, since failures happen infrequently
      and it is unlikely that there will be many inconsistent en-
      tries"

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

    00:04 RAFT is a distributed consensus algorithm for data replication in case of server failures.
    01:12 Raft helps achieve consensus by getting all nodes to agree on one state of the data.
    02:25 The leader in RAFT is selected through an election process
    03:31 Nodes become candidates when the leader dies and vote for themselves
    04:33 Log entry is appended but not committed
    05:42 Leader cannot append the log entry if there are gaps in the log
    06:45 RAFT ensures consistent log across multiple nodes
    07:52 Raft can be used on any finite State machine, not just a database.
    Crafted by Merlin AI.

  • @MalteJanduda
    @MalteJanduda Před rokem

    Who is Tom Tato?