Facebook MEMCACHE: PETABYTES of key values

Поділитися
Вставка
  • Опубліковано 16 лис 2024

КОМЕНТАРІ •

  • @gkcs
    @gkcs  28 днів тому +8

    Folks, apologies for the background noise. I never seem to get the tech right 😅
    Thank you for watching, I am looking forward to seeing you again soon 🦸

    • @__nitinkumar__
      @__nitinkumar__ 26 днів тому

      Hey Man, can we get a discount back on the course. I wanted to buy during Festival Sale, but missed it. It hasn't come down since then.
      Hoping in Diwali there would be some discount.

  • @aldroid5838
    @aldroid5838 28 днів тому +11

    Thanks for the effort man….your videos are great and are of great help

    • @gkcs
      @gkcs  28 днів тому

      Cheers!

  • @piyush_chomal
    @piyush_chomal 23 дні тому

    Great summary video Gaurav 👏
    Few pointers you may consider to cover:
    * Lease concept to mitigate stale sets and thundering herd to persistent DB
    * McRouter intermediary component to batch invalidation requests and minimise network congestion
    * Remote Marker concept to tackle stale set problem arising from eventual consistency during cross-region replication from leader to follower

    • @gkcs
      @gkcs  23 дні тому

      Thanks Piyush!

  • @DD-ds7ui
    @DD-ds7ui 27 днів тому

    thank you Gaurav for teaching us 🙏🏽 This is kind of knowledge is out of bound for us older and self-taught developers.

    • @gkcs
      @gkcs  27 днів тому

      Cheers!

  • @satyamjha68
    @satyamjha68 23 дні тому

    Amazing video! Loved it! Hoping to get more videos on whitepaper series soon!

  • @sudipmandal2497
    @sudipmandal2497 4 години тому

    Thank you sir for this awesome video.

  • @sashpawar11
    @sashpawar11 26 днів тому +1

    Beautifully explained, thanks a lot!

  • @vipulkumar6082
    @vipulkumar6082 28 днів тому

    Thanks a lot Gaurav 🙏 It's always some value addition to my design knowledge 👌 Thanks a lot ❤

    • @gkcs
      @gkcs  28 днів тому

      Thank you 😁

  • @marksman2op
    @marksman2op 25 днів тому +1

    What's better than Gaurav explaining a concept? Two Garurav's XD

    • @gkcs
      @gkcs  25 днів тому

      Cheers :D

  • @jrajesh11
    @jrajesh11 16 днів тому

    Great video. Could you explain about choosing cache sizes and if its use case dependent or how will it adapt to changing use cases .

  • @wennwenn1422
    @wennwenn1422 24 дні тому

    Gaurav, @25:35 what's the purpose of this standby Gutter instance when you already have (many) replicated instances?
    Assuming all the production replicated memcached instances are running at 60-70% capacity.

    • @gkcs
      @gkcs  24 дні тому +1

      It seems like a way to limit the impact of failing requests.
      With a assigned gutter instance, the connections made by a client will be limited to (routed instances + gutter instances). Else it could hit every instance and choke up connections.
      That's just a guess. I will read the paper again to be sure :p

  • @singh.aadarsh
    @singh.aadarsh 27 днів тому

    Amazing paper 😮 31:40

  • @sssrikanthhh
    @sssrikanthhh 27 днів тому

    Thank you very much bro❤

  • @hernan.cortes
    @hernan.cortes 28 днів тому

    Great content!! Thank you!

    • @gkcs
      @gkcs  28 днів тому

      Thank you!

  • @blasttrash
    @blasttrash 28 днів тому +2

    why cant they use redis? was redis not there in 2010? or was it not feasible for their usecase?

    • @gkcs
      @gkcs  27 днів тому +3

      Redis didn't exist at that time. Memcached came out in 2003, redis took till 2009.
      The facebook team was well-versed with Memcached by 2010.

  • @gouravprasad737
    @gouravprasad737 27 днів тому

    wht if they had used configuration provider like kafka for the sharding approach? obvio it was not available then... just a thought...

    • @gkcs
      @gkcs  27 днів тому

      I don't see how that would help. Could you elaborate on the thought?

  • @tarungarg3627
    @tarungarg3627 25 днів тому

    How can sharding be replaced by replication?

  • @mayankrathore7558
    @mayankrathore7558 25 днів тому

    Most popular question these days,
    Design distributed counter where we can see burst of write on counter,
    multiple solutions
    1. range distribution ->
    1.1. Once range distributor exhausted all ranges and some range are available on other app server how to borrow order id from neighbor app servers.
    1.2. Commit of order since we want atomicity as well.
    2. Sharding
    It is Good topic to cover :)

  • @abhis3kh
    @abhis3kh 20 днів тому

    So, in replication - we will have replication of whole Facebook database in a cache (muiltple times)? Can you please clarify

    • @gkcs
      @gkcs  19 днів тому +1

      We will have as much data from the DB as we can store in-memory.

    • @abhis3kh
      @abhis3kh 19 днів тому

      @@gkcs Incase we don't have that in Cache - we will get it via DB query and get it updated in Cache ?

  • @dipanshukumar3733
    @dipanshukumar3733 28 днів тому

    ❤ you brother.

  • @rishiraj2548
    @rishiraj2548 28 днів тому

    🙂👍🏻💯

  • @karan-oh5th
    @karan-oh5th 23 дні тому

    In final section (data consistency ) at 29:30 , when we are using Bin Logs , how do they resolve data conflicts b/w ind server and us server ?
    does McSQUEAL handle that or its just rollback ?

    • @gkcs
      @gkcs  22 дні тому +1

      They wait for the problem to resolve itself. Eventual consistency.