Dynamo - Why Amazon Ditched SQL | Distributed Systems Deep Dives With Ex-Google SWE

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

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

  • @kyrie-irvine
    @kyrie-irvine 17 วันที่ผ่านมา +2

    i absolutely love your videos, please keep them coming. Its refreshing to watch a technical video that also incorporates humor & sports references haha. You the real MVP

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

    Your videos are the best, I work as a data engineer and by watching your first videos I was able to achieve a deeper knowledge about distributed systems, these videos help a lot

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

    Jordan, I'm eagerly anticipating this series and love your approach. Don't be discouraged by view counts. However, I thought you were planning to reduce the jokes. The first thing I heard was an STD joke😂

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

    I continue thinking, this is the best channel about system design, bro dropped a new playlist.
    Thanks Jordan!!

  • @UnknownIllusionist
    @UnknownIllusionist 14 วันที่ผ่านมา +1

    Great video. Your channel is very motivating to keep learning things beyond surface level

  • @udaypatidar5183
    @udaypatidar5183 หลายเดือนก่อน +1

    Thank you Jordan. This is the only tech channel which i can't fast forward, dude speaks content whole video.

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

    Jordan. I am impressed by you. Keep up the good work

  • @siddharth-gandhi
    @siddharth-gandhi 4 หลายเดือนก่อน +2

    Single handedly making me very interested in systems. Much thanks

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

    Great video distilling very dense material. This is on my whitepaper mount rushmore along with GFS, BigTable, and Chubby.

  • @arkknox1298
    @arkknox1298 3 หลายเดือนก่อน +1

    Awesome video! Really great way to stay engaged because my brain really doesnt like reading long academic papers 😅

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

    welcome back and excited to this new series :D

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

    Hey Jordan, this series is🔥🔥. I recently finished Designing Data Intensive Application and now your videos on top of it makes so much easy to cover all the aspects. Keep up the good work 🙇‍♂️

  • @Marcusdel-op5sb
    @Marcusdel-op5sb 4 หลายเดือนก่อน +1

    LOVE this new type of content. I am in the same boat where now that I am understanding the breadth of distributed systems and system design, I am now looking into tackling concepts at depth.
    I would love if you could create some sort of whitepaper / eng blog roadmap. I find it hard to sift through and find the most relevant articles and papers, especially to certain topics.

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

      Thanks! I can try on the roadmap, but I have to read a lot more first lol

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

    Thank you Jordan, and congrats on new way !!!!

  • @maxli9629
    @maxli9629 3 หลายเดือนก่อน +1

    Thank you, Jordan. I learned a lot from your video. Appreciate it!

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

    More views than the questions video.... Congratulations 🎉

  • @rish.i
    @rish.i 28 วันที่ผ่านมา +1

    Thank you Jordan for this series. In the paper when comparing b/w 3 partitions approaches its written that for fixed size 3rd strategy, the membership information stored at each node is reduced by three orders of magnitude. Whereas in previous paras, its mentioned that 3rd strategy stores not only no of tokens (servers) hash as in 1st but also which partition info stored on each node. Isn’t that contradictory info or am misunderstanding something. Ideally third partition scheme should contain more membership information per node.
    Assuming that they have not changed request forwarding from O(1) hops to logn dht like chord or pastry like routing whereas each node stores only limited number of nodes information sacrificing direct hops.

    • @jordanhasnolife5163
      @jordanhasnolife5163  26 วันที่ผ่านมา +1

      I'm actually not quite sure, but I imagine that for fixed tokens perhaps you can just give each token a name and say which token belongs to which node, rather than explicitly listing out the ranges, which saves a bit of information to propagate (maybe if there's 128 tokens for example, you only need a short to communicate a token name)

  • @cc-to2jn
    @cc-to2jn 4 หลายเดือนก่อน +1

    my man, lets goo! this is what I'm in for!

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

    Finally an update from my favourite Vtuber

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

    love the videos man keep em coming! if possible please make a video on project ideas to get more hands on learning on distributed systems topics :)

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

    Yoooooo! This channel just became peak second monitor content!

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

    Can you do the spanner paper next? Great job btw, really helps with understanding first principles

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

      Probably won't be next but will get there!

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

    Nice video. Continue the series...

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

    But babe, I thought the next series would be 'Lifting and Leetcode,' where you max out on bench and then superset that with a Leetcode problem :(
    Anyways, loved the content as always 🙌🙌

  • @SystemDesign-pro
    @SystemDesign-pro 4 หลายเดือนก่อน +1

    This is it! This is the video you surpassed Stefan

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

    2:35
    According to DDI (Martin Kleppmann) book chapter about leaderless replication, Amazon Dynamo is not the same as DynamoDB of AWS. It kicked off a "trend" of Dynamo-style database like Cassandra and Riak
    Never used any of those db, but the book really do a good job of explaining the concept of leaderless replication (along with various other concepts)

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

      Thanks! Yeah I try to make it clear they aren't the same

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

      DynamoDB using single leader replication was a fantastic troll job

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

    Half way through it and really interesting! Please make one on opensearch too, TIA!

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

    Hi Jordan! nice new format :) Hope there will be a video about Zookeeper someday. Still cant fully understand this teck

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

      Probably 2 from now since it's based on chubby

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

      ​@@jordanhasnolife5163 I didnt know that Zookeeper is based on Chubby. It seems that the entire Internet is based on Google developments

  • @Osama-k7q
    @Osama-k7q 4 หลายเดือนก่อน +1

    Great Video please keep it up

  • @zigg_zoldyck
    @zigg_zoldyck 3 หลายเดือนก่อน +1

    Amazing content !! ❤ Question: What are logical partitions ? How do seeds help avoid them ? Why do we want to avoid them ?

    • @jordanhasnolife5163
      @jordanhasnolife5163  3 หลายเดือนก่อน +1

      It means two "partitions" that don't know to gossip with one another and thus assume they're the only partition. Seeds ensures that we don't run into such a situation since every node will always communicate with the seed so that information about the nodes in the cluster get propagated.

    • @zigg_zoldyck
      @zigg_zoldyck 3 หลายเดือนก่อน +1

      Got it, thanks

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

    Jordan you are awesome. I know you already know that ;)))

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

    Hi Jordan, how would you design the feature on TH-cam/Netflix where a user can watch a video and pick up where they left off when they come back to that video? I have an interview coming up soon and I couldn't find anything about this feature on your system design TH-cam/Netflix video about this :(

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

      Put a row in a database for the last timestamp a user has watched per video. Every x seconds while they're watching you can place it in Kafka or something and then write to the db asynchronously

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

      @@jordanhasnolife5163 are you placing it in Kafka so that you can reduce write load on the db? Also why are you choosing Kafka over rabbitMQ here? Would this queue need to be durable?

  • @CodeXaen-c7j
    @CodeXaen-c7j 4 หลายเดือนก่อน +1

    Hi Jordan, Thanks for uploading this video and overall great content from this channel.
    I have a question regarding the write back cache, if a durable write is performed on less than W nodes and the other nodes (where a cache write was performed) go down afterwards, it would appear that the write succeeded even though it didn't. How is that dealt with? Is that done with a WAL?

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

      Yep, the write would be lost. That's the risk we take with non-durable writes. Ideally one is alive and we can eventually propagate it through sibling resolution.

    • @CodeXaen-c7j
      @CodeXaen-c7j 4 หลายเดือนก่อน

      @@jordanhasnolife5163 Thanks for the clarification.

    • @CodeXaen-c7j
      @CodeXaen-c7j 4 หลายเดือนก่อน +1

      @@jordanhasnolife5163 Thanks for the clarification. Btw, I commented on this thread some time earlier and it showed up at the time, but it's gone now (it kept the thumbs up though), it appears this may have been a non-durable write (hopefully this one goes through).

  • @thunderzeus8706
    @thunderzeus8706 3 หลายเดือนก่อน +1

    I failed to understand the fixed size partition part: If the partitions are predefined fixed size data partitions, how are new nodes being added? Random hash does not guarantee to hit the boundaries of fixed size partitions. Could you elaborate a little more? Thank you!

    • @jordanhasnolife5163
      @jordanhasnolife5163  3 หลายเดือนก่อน

      Partitions != Physical nodes. We have very many partitions, and they're equally distributed over the nodes.

    • @thunderzeus8706
      @thunderzeus8706 3 หลายเดือนก่อน +1

      @@jordanhasnolife5163 I understand Partitions != Physical nodes. Let's say we have 1000 fixed size partitions among the key space 2^64. When a new node is added, its corresponding hash H100 falls in the 100th partition key range [Start-7, End-7]. Which node does key ranges [Start-7, H100] and [H100, End-7] fall into?
      From what I can see, if the purpose of fixed-size partition is to not to recompute merkel tree. But a new node's hash falls in between a partition key range will result in merkel tree recomputation at least for s [Start-7, H100] and [H100, End-7]. We cannot control the hash of the new node to be exactly on the partition boundaries.

    • @thunderzeus8706
      @thunderzeus8706 3 หลายเดือนก่อน +1

      Using your example @37:00 to illustrate, the new node 4 falls exactly on a partition boundary. I feel that is not always the case, thus my confusions.

    • @jordanhasnolife5163
      @jordanhasnolife5163  3 หลายเดือนก่อน

      @@thunderzeus8706 It is always the case if we code it to be (which they do)

    • @jordanhasnolife5163
      @jordanhasnolife5163  3 หลายเดือนก่อน +1

      @@thunderzeus8706 Reiterating, yes we can. We control the hash ring and can place the node wherever we want.

  • @dirty-kebab
    @dirty-kebab 4 หลายเดือนก่อน +1

    Had me in the first half 😭

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

    This is gold!!

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

    hope this series lasts longer than my relationships

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

    omw to becoming a 0.5x engineer!!

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

    Plz keep going.😊

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

    love this

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

    Great 👍

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

    New here and love this

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

    Good job

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

    Any plans for presto/trino?

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

      it'll probably be a bit but yeah!

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

      @@jordanhasnolife5163 appreciate it! Those systems are for sure their own beasts and wading through literature is a pain. But spark / presto / Pinot would all be awesome to see!

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

    👌👌👌👌

  • @LokendraSingh-42
    @LokendraSingh-42 4 หลายเดือนก่อน +1

    0:41 does that mean you were positive in your STD test

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

    please use some coloured highlighter, my midwit brain can't comprehend whats happening

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

      My midwit brain doesn't know how to use multiple colors

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

    first one, like, thank you

  • @sayandas5587
    @sayandas5587 14 วันที่ผ่านมา +1

    STD positive
    So you have more life than me

  • @user-qq7yc1qp8z
    @user-qq7yc1qp8z 4 หลายเดือนก่อน +2

    you need a better mic

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

      No, I need a girlfriend

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

      @@jordanhasnolife5163noooo! Girlfriend means no Saturday videos!

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

      @@romanivanov6183 Great point, no life it is

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

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

    I am the first viewer.