System Design Interview - Distributed Cache

  Переглядів 339,128

System Design Interview

System Design Interview

5 років тому

Please check out my other video courses here: www.systemdesignthinking.com
Topics mentioned in the video:
- Functional (put, get) and non-functional (high scalability, high availability, high performance) requirements.
- Least recently used (LRU) cache.
- Dedicated cache cluster, co-located cache
- MOD hashing, consistent hashing.
- Cache client.
- Static vs dynamic cache servers list configuration.
- Leader-follower (master-slave) data replication.
- Cache consistency, data expiration, local and remote cache, security, monitoring and logging.
- Memcached, Redis.
Inspired by the following interview questions:
Adobe (www.careercup.com/question?id...)
Amazon (www.careercup.com/question?id...)
Ebay (www.careercup.com/question?id...)
Google (www.careercup.com/question?id...)
Yahoo (www.careercup.com/question?id...)

КОМЕНТАРІ: 661
@vigneshrajarajan6724
@vigneshrajarajan6724 4 роки тому
this is the most underrated channel, kudos to your way of explaining things in succinct manner. Please put more videos
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you, Vicky, for the kind words! Working on more videos.
@nirumani
@nirumani 4 роки тому
I second. I wonder what does it take to make it popular. There should be something simple. I am watching a few other channels. Nobody covers it to this level. May be more videos required. on short topics. Say 10-15 mins .
@dchana
@dchana 3 роки тому
@@nirumani put it on LC discussion board
@nickflacco3452
@nickflacco3452 3 роки тому
Fantastic series of videos. I've worked on very large distributed caches (multiple terabytes, thousands of servers) and some other fun stuff to mention to the interviewer is: - Failure modes besides just plain qps. Specifically, Redis will be overwhelmed by connection churn if it receives thousands of new connections per second. Twemproxy, on the other hand can handle this just fine. I have not tested this with Redis Cluster, but I suspect Redis Cluster also suffers from this. - Auditing: With GDPR and California's analog to this, the legal department often is interested in how long we store data and where. For the former case, they may want a global TTL, or failing that, metrics and alerts when the cache TTL is too high. For the latter case, we may need to separate out data from users in various countries at the client level. - Maintaining client libraries: How do we make sure everybody is on the newest version of the library? How do we manage multiple implementations? For Redis Cluster, this is a big problem- it turns out different clients have very different characteristics when it comes to detecting failures of nodes. Using a sidecar proxy like Envoy can be a big help as we can manage retries and health checks in a more principled manner. - Testing: Frequently service owners don't think about how their service behaves with a degraded cache. Chaos monkey is a step in the right direction, but it is a blunt tool. Instead we can add knobs to return a percentage of errors, or delay requests, allowing us to really understand how we need to improve the service- for example retry intervals.
@martinhenriksson8617
@martinhenriksson8617 3 роки тому
@@SystemDesignInterview Unfortunately you have so few videos, I've been watching them over and over before my system design interview. Top K heavy hitters is my favorite one, probably watched it 5 times already.
@YanruBi
@YanruBi Рік тому
Discovering this channel in 2022, I wish there will be more updates. This is one of the best system design learning resources, and it's free. Every sentence is so on point. Thank you very much!
@user-jt5ds8fo6r
@user-jt5ds8fo6r 5 місяців тому
Discovered this channel at the end of 2023 and it’s still top channel.
@dmitriizheleznikov2949
@dmitriizheleznikov2949 Місяць тому
Hey from 2024
@MyQiman
@MyQiman 3 роки тому
You know a video is good, when you have to pause the video constantly and process the information. Thank you so much for your time and effort on these high quality and thoughtful lectures!
@booleangray2225
@booleangray2225 2 роки тому
That is absolutely true. I usually watch other videos in 1.5x time so I complete them fairly fast but for this video I have to pause it many times to take notes and process information so it takes more than the video's length (easily 2x).
@mrunaldave6781
@mrunaldave6781 3 роки тому
Amazing content. So much to-the-point and valuable information packed in 34 minutes. This one video is equivalent to multiple hours of videos from other channels out there! Many thanks Mikhail.
@bloody9162
@bloody9162 2 роки тому
The content that you've put is extremely high in quality, leaving nothing to chance. I haven't seen such pure content since DDIA. Many thanks for making it available for free.
@amardeepbhowmick3614
@amardeepbhowmick3614 4 роки тому
10/10 would recommend to anyone who wants to know about caching
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you for the feedback, Amardeep! Really appreciate it.
@kiratsaluja3522
@kiratsaluja3522 3 роки тому
I am glad I bumped into this channel before my interviews. Man what explanation. Just super
@click007
@click007 3 роки тому
I’ve been watching system design interview videos all over the place for the last 4 months. How come I’ve never seen this channel before?! Amazing quality and real technical depth!
@ChandramouliMallampalli99
@ChandramouliMallampalli99 2 роки тому
such a clarity of thought on every single component and design choice, loved the depth !
@AP-eh6gr
@AP-eh6gr 3 роки тому
This is gold. Addresses many small details that other videos just glossed over
@rakeshwadhwani2231
@rakeshwadhwani2231 3 роки тому
Thanks for doing a phenomenal job by creating these videos. I've seen all of your system design videos by now.
@hetalpatel78
@hetalpatel78 2 роки тому
The best video on explaining distributed caching in a concise, clear and technical way I have found!! Great job - would love to see more videos like these on back-end system design topics!
@jainashish6
@jainashish6 Рік тому
You covered almost all perspectives of the interviews. Really liked the flow and simplicity.
@RikiPoon
@RikiPoon Рік тому
The best system design demo i've even seen, with detailed and sound explanation behind each step in approaching the problems. Thanks!
@actzful
@actzful 3 роки тому
this is probably best system design interview video i've watched. i learnt so much, thank you!!
@donaldbough3445
@donaldbough3445 Рік тому
Love the encouragement to dive into details. Easy to see how someone involving technical details instead of relying on managed services to handle it would make them stand out in an interview. Thanks!
@andrewsouthpaw
@andrewsouthpaw 2 роки тому
This video provides an excellent balance of high-level concepts and diving deep into details. An incredible resource to find, and vastly better than many paid options out there on systems design.
@1point0tennis
@1point0tennis 3 роки тому
I like your style of repeating concepts throughout several videos. It helps reinforce them and allows the viewer several viewing opportunities to let it sink in over different videos (versus just watching the same video over and over to absorb something, which can get boring).
@wildansyahidillah7978
@wildansyahidillah7978 3 роки тому
Wow, I think this channel has the best explanation of the available system design problems, which is able to provide a step-by-step explanation of how we get to the final design. Some other channels just slap the final design almost right away, which can be overwhelming and sometimes leave its sub systems inadequately explained. Please add more system design problems, keep up the great work!
@gymmom888
@gymmom888 3 роки тому
This is a well thought out and well laid out presentation. I really liked the slides that complimented the verbal presentation. The summary at the end is also very useful, taking one from how the problem was first approached, and then what the final solution is. Well done!
@isaaclacoba4458
@isaaclacoba4458 3 роки тому
I'm amazed by the amount of information introduced in the video. Like other people said, kudos to you!
@rkumar084
@rkumar084 Рік тому
The coverage of videos is both deep and wide. Comprehensive! this guy leaves no stone unturned.
@jasonmeyer495
@jasonmeyer495 2 роки тому
I've watched all the popular channels on YT for system design and this one is without question the best one. Thank you so much for creating these videos. I hope you make more.
@Censik
@Censik 3 роки тому
Got exactly this question on a system design interview. Thanks a lot! I was properly prepared. This is the best set of lectures on system design I've ever saw.
@amans.4701
@amans.4701 3 роки тому
Hi Mikhail. This is the first video that I watched on the channel and I have to say it's the best resource out there. I love the way you progress to a better solution at each step. Keep up the good work. I'll use this information while implementing a distributed cache in my project. Thanks.
@manishk73
@manishk73 2 роки тому
The way you explained system designs in your channel is awesome. Appreciate your work. Please put more videos.
@supriyapase8027
@supriyapase8027 2 роки тому
Glad I stumbled upon this channel. All the system design videos are thorough and well explained! Looking forward to more videos. Thank you!
@BitsnBytes8
@BitsnBytes8 2 роки тому
The details and trade-offs you talk about clearly indicate that this information is acquired through a lot of practical experience. A lot of hard work has gone into this from your end. Thank you for sharing your knowledge. Look forward to more videos from your channel.
@abhijeetgulve3409
@abhijeetgulve3409 2 роки тому
I was always struggle with HLD cache design. Always though it would be LLD but you explain in way that clears all my thoughts. Great work man :)
@fokkor
@fokkor 4 роки тому
Another great video, I can't say the importance of details in system design and as far as I've seen only your videos cover it. Don't get swayed by other 'scratching the surface' videos, keep up the good work!
@harzonline
@harzonline 2 роки тому
After watching many videos on consistent hashing, I am glad that I came across yours. The way you explained the process was simple and easy to understand. I really appreciate your efforts in putting together quality content.
@SuperWhatusername
@SuperWhatusername 2 роки тому
One of the most detailed explanation of distributed cache. That includes the way it should be approched with, in the interviews. Thanks a lot
@dav0625
@dav0625 Рік тому
Hello Mikhail, thank you for your valuable work. It definitely brings added value when it comes to learn architecture topics.
@dhonisingh7123
@dhonisingh7123 3 роки тому
Very well explained videos. Like everyone mentioned, this channel is awesome. Thank you @System Design Interview. Sad to see no more new videos coming from this channel.
@srinia7652
@srinia7652 2 роки тому
Clear, concise, and crisp. Feels like hitting a gold mine in the world of junk
@rizwan4701798
@rizwan4701798 2 роки тому
This channel is certainly a gold mine. Thank you for the great content.
@prasadj8676
@prasadj8676 Рік тому
Excellent explanation! This channel is very underrated the quality of the videos are far better than any other in the internet.
@ankursinghal1
@ankursinghal1 3 роки тому
This is an excellent video for understanding the inner working of distributed cache. It starts from a very basic implementation and builds on top of it and clearly explains all concepts of distributed cache and major issues. Very helpful video.
@andyindus
@andyindus 2 роки тому
Totally Agree. This is gold! You explain the complexities so clearly and without overloading the narrative with buzzwords. Thank you!!
@abhinavmishra9401
@abhinavmishra9401 3 роки тому
Beautiful video. Thanks a lot, Man! I recently finished my masters in Distributed Systems and this video helped me consolidate my otherwise Distributed Knowledge ;)
@prafulparashar9849
@prafulparashar9849 Рік тому
This video is incredible !! I have never seen a more complete structured solution to a system design question. Great work, Kudos !!
@mrmca1
@mrmca1 3 роки тому
hands down, the best distributed cache explanation on UKposts. Every other video talks about caching and not distributed caching. This is a complete crash course on distributed caching.
@dilipnanecha
@dilipnanecha 2 роки тому
Awesome explanation and well structured! Thank you Mikhail!
@PankajSharma-ce9mj
@PankajSharma-ce9mj 2 роки тому
I'm short on words how good Mikhail explains things. Initially I was just going over the video without making any notes. Then once I started making notes, I realized there are tons of information in everything single component or design choice he explains.
@sideholidays
@sideholidays 3 роки тому
Thank you so much for such a compacted and detailed explanation. I learned sooo much and got lots of questions I had regarding caching clarified. This is definitely the goto tutorial for a beginner.
@sanjayizardar2263
@sanjayizardar2263 2 роки тому
You have amazing skills of explaining concepts, you have truly mastered it. I leaned a lot by watching your videos. Keep posting.
@manjunathks6368
@manjunathks6368 Рік тому
This is by far the best demonstration of designing a distributed cache. I really appreciate the way you brought up the the solution to a bigger problem in a progressive approach. Loved it. Keep growing.
@moiqubal
@moiqubal Рік тому
This is the most informative, detailed, comprehensive, concise, and easy to follow video I've ever seen. Thank you so much for making this video.
@SwetaSingh-2002
@SwetaSingh-2002 3 роки тому
I think you are brilliant. Please share your knowledge on a regular basis. Hope to see more videos in this channel.
@fazalali2771
@fazalali2771 3 роки тому
Your channel and explanation of System design for various topics is so neat and elegant. Even before you dive into the design aspect of the question, the identification of the functional and the non functional requirements itself is so useful. Truly yours is a very under rated channel. Hope to see many more videos from you.
@CleanCoder
@CleanCoder 2 роки тому
This is one of the best videos available on the internet for system design of distributed cache like Redis.
@viveksai3773
@viveksai3773 3 роки тому
A very well crafted video. This should serve as the benchmark for system design interviews.
@puneetarora9294
@puneetarora9294 3 роки тому
Thanks, Mikhail!! This is super helpful! Would love to see more videos :)
@robinnayak4521
@robinnayak4521 5 місяців тому
The best video I have seen covering a lot of topics on distributed systems.
@zhuoqianzhang4399
@zhuoqianzhang4399 2 роки тому
Oh my... this is the best ever system design! If I am the interviewer I will be begging the recruiter to hire you, man... The way you layout the problem statement, evolve and improve the system, revisit the requirements and discover further is just amazing. I can't believe you covered so much in just a half-hour.
@priyavutukuri1223
@priyavutukuri1223 2 роки тому
I guess he is the only who covered and connected the dots between LRU cache implementation and how to transition that to a distributed hash table problem. The content is amazing !!!
@karankhara1312
@karankhara1312 2 роки тому
Watched other youtube videos too, but this one is the best. It starts with the requirements, then talks about LRU cache and even it's quick code implementation. Then talks about how cache host is selected (like Consistent Hashing) and how Cache Client selects the Cache Hosts (talks about all 3 ways). Also, nicely explained with diagrams. Thanks a lot.
@summermoonspace
@summermoonspace 2 роки тому
need more of the amazing quality videos. come back please!
@reprogram_myself
@reprogram_myself 3 роки тому
this is The only channel that gives you insights of how to do system design interviews.
@andywang6856
@andywang6856 2 роки тому
This is one of the best system design related videos I've seen on youtube. Thank you
@suneethasuresh9826
@suneethasuresh9826 2 роки тому
Thank you for uploading this. Very informative and so far the best tutorials available online.
@pratibharana2983
@pratibharana2983 4 роки тому
Very well put together. I loved how you started simple and then expanded on it as more requirements were added one by one. Keep up the good work.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you, Pratibha, for the feedback! Much appreciated!
@idiot7leon
@idiot7leon 3 роки тому
Thanks. ~ 10:45 Local Cache Implementation Stepping into the distributed world: 10:46 ~ 12:42 Dedicated Cache Cluster vs Co-located Cache 12:43 ~ 14:05 Choosing a cache host: naive approach 14:06 ~ 16:04 Choosing a cache host: consistent hashing 16:05 ~ 17:25 Cache Client 17:26 ~ 20:00 Maintaining a list of cache servers 20:01 ~ 22:13 Summary 22:14 ~ 25:52 Achieving high availability 25:53 ~ 32:17 What else is important: consistency, data expiration, local and remote cache, security, monitoring and logging, cache client, consistent hashing 32:18 ~ 34:33 Summary
@doruwyl
@doruwyl 4 роки тому
Great explanation! I hope you will continue with posting more System design interview videos. The fact that you started from the naive approach to a better solution I consider is a big thing to consider all pros/cons!
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Hi Dumitru. Appreciate your feedback! Working on more videos. If you like the format, I hope the next video (in progress) will resonate well with you.
@mrCetus
@mrCetus 2 роки тому
Wow. I'm currently studying system design and have to say this is by far the best resource I've run into and I've paid for multiple services and classes on system design. Thank you for creating these awesome videos, you definitely have a +1 follower.
@seu0loda
@seu0loda 3 роки тому
Very comprehensive video for distributed cache design. Great work.
@vetiarvind
@vetiarvind 4 роки тому
I like how you keep it high level and summarize periodically. Like the structure.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you for the feedback, vetiஅரவிந்த! Glad to know that both the structure and the approach resonate well with you.
@sudharsansathiamoorthy1075
@sudharsansathiamoorthy1075 3 роки тому
Your explanation is too good!! Keep posting System design interview videos for different topics..!!
@tobedecidedlater
@tobedecidedlater Рік тому
I never get an offer when I smile and try to leave a positive impression in my interviews. I need to learn to be more like this guy.
@gouthamreddy444
@gouthamreddy444 3 роки тому
Excellent explanation among tens of Videos I have seen on UKposts on this topic. Better than paid courses online.
@beyond_height
@beyond_height 3 роки тому
Extremely insightful and full cream on the topic. Salute!
@SriramGopalGoli030792
@SriramGopalGoli030792 3 роки тому
I have seen so many system design videos on distributed cache and i can tell you nobody has explained better than this video.
@suchismitagoswami5609
@suchismitagoswami5609 2 роки тому
This is one of the best videos on caching I have watched so far. Could you please also put more videos on different type of cache sharding techniques? Also, I would request you to make a lesson on other cache replication strategies with their pros and cons in such a detailed manner.
@neek6327
@neek6327 Рік тому
This channel is amazing. Wish there were more videos!
@MultiZoozoo
@MultiZoozoo 2 роки тому
Excellent application and explanation of distributed systems concepts - Partitioning, Replication, Configuration management, Consistent hashing along with pros and cons.
@truptibavalatti9285
@truptibavalatti9285 4 роки тому
Excellent video! Quality of content is top notch. I spent hours reading up on each components before I came across your videos. You are doing an amazing job!
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you, Trupti.
@akshatbhardwaj4026
@akshatbhardwaj4026 3 роки тому
Your videos are the best I've ever seen on UKposts. You've made understanding these complex components so much easier. Thank you so much! Hope you keep creating more awesome content.
@SystemDesignInterview
@SystemDesignInterview 3 роки тому
Thank you for the feedback, Akshat! Much appreciated.
@limasntoinf
@limasntoinf 3 роки тому
Finally understood consistent hashing. Thank you!!!
@abhishekprajapati701
@abhishekprajapati701 2 роки тому
This is my first comment on any video. What an incredible job you did in this video, I loved how you introduced the problem and suggested their solutions. Not to miss explained in very simple and efficient way. Thank you!
@cnanavat
@cnanavat 4 роки тому
Great explanation. The ending of these videos helps identifying how to solve real world problems using the content in the videos.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you, @cnanavat, for all your feedbacks!
@charleszhang3075
@charleszhang3075 2 роки тому
One of the best system design videos. Actually much better than most of paid video contents. The creator of this video clearly demonstrated his deep understanding to the topic.
@sureshbabu8794
@sureshbabu8794 2 роки тому
Today I learned some good stuff on distributed caching. Thanks a lot for posting such kind of videos. Great Work!!
@gokuls9929
@gokuls9929 Рік тому
Please add more videos.. you have been the best channel on SD I have seen so far.
@subbamatta1947
@subbamatta1947 3 роки тому
I must say, underrated channel. This deserve lot more views. The uniform approach you followed in all videos, just awesome. Thanks a lot.
@SystemDesignInterview
@SystemDesignInterview 3 роки тому
Thank you, Subba, for the kind words! Much appreciated.
@ErrorFr33
@ErrorFr33 4 роки тому
The most thorough system architecture rundown with plenty of examples.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you for the feedback, ErrorFr33!
@spk9434
@spk9434 4 роки тому
Awesome video. Like the way you bring up the issues with design and evaluate the options.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you for the feedback, @pks!
@terrydawkins7752
@terrydawkins7752 3 роки тому
Best video for anyone who wants to understand the basics of distributed caching
@pratyushdhoundiyal8837
@pratyushdhoundiyal8837 4 роки тому
I have watched too many video on this. Yours is simply the best so far. Some just scratch the surface, others just dive straight into complex technicalities. This is class apart. I wish you upload more stuff in the future!! A big thanks again...
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Glad you liked it, Pratyush. Appreciate the feedback!
@subbareddyv-uoh
@subbareddyv-uoh 2 роки тому
This is the best explanation I found so far. Thank you very much.
@ankitsuthar1027
@ankitsuthar1027 9 місяців тому
One of the best video on caching! Thanks for creating this content. :)
@ahmedalsaedi3849
@ahmedalsaedi3849 7 місяців тому
best system design channel by far
@andyyuan97
@andyyuan97 2 роки тому
Great job! please share more!
@ameyjain3462
@ameyjain3462 3 роки тому
You are so awesome. THis is the only channel which gives a easy to complicated solution instead of explaining how redis works withs its huge complicated architecture which is not useful for system design interviews.
@007nithin1
@007nithin1 3 роки тому
This channel is highly underrated!. This is the very best explanation of distributed cache I have ever come across. It's simple and touches every core components through a concise explanation. Big thanks Mikhail!, expecting more uploads.
@SystemDesignInterview
@SystemDesignInterview 3 роки тому
Glad you like the video, Nithin. Thank you for the feedback! More videos to come.
@shubhamchandra9258
@shubhamchandra9258 2 роки тому
Speaking logical facts with a straight face is a next level skill.
@vigneshbaskaran631
@vigneshbaskaran631 3 роки тому
What a video man.. What a video !!!!!! .. really amazed by your explanation and completeness of the content.
@alexanderyakovlev9311
@alexanderyakovlev9311 4 роки тому
This is one of the best system design interview videos.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you, Alexander!
@shubhraization
@shubhraization 4 роки тому
These videos have helped me making a great impression in interviews. Thanks for such detailed video. Please construct more videos.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Glad to be helpful, Shubhra. Wish you luck on your interviews! I hope you will find these videos useful not only for interviews, but for your daily job as well.
@ravitiwari2160
@ravitiwari2160 3 роки тому
Hey, Thank you so much all your knowledge sharing. I am able to perform very nice in all my interviews. Keep up the good work. More power to you. Keep rocking!!!
@dariuszruminski8549
@dariuszruminski8549 4 роки тому
Very informative so far as I've seen comparing other open resources. Thank you. Teaching others is the best way to grow.
@SystemDesignInterview
@SystemDesignInterview 4 роки тому
Thank you for the feedback, Dariusz.
System Design Interview - Rate Limiting (local and distributed)
34:36
System Design Interview
Переглядів 280 тис.
System Design Interview - Distributed Message Queue
26:28
System Design Interview
Переглядів 262 тис.
What are Distributed CACHES and how do they manage DATA CONSISTENCY?
13:29
Redis system design | Distributed cache System design
34:10
Tech Dummies Narendra L
Переглядів 278 тис.
I gave 127 interviews. Top 5 Algorithms they asked me.
8:36
Sahil & Sarra
Переглядів 568 тис.
S3 system design | cloud storage system design | Distributed cloud storage system design
52:47
Cache Systems Every Developer Should Know
5:48
ByteByteGo
Переглядів 422 тис.
Consistent Hashing | Algorithms You Should Know #1
8:04
ByteByteGo
Переглядів 272 тис.
System Design Interview - Top K Problem (Heavy Hitters)
36:18
System Design Interview
Переглядів 345 тис.
System Design Interview: A Step-By-Step Guide
9:54
ByteByteGo
Переглядів 556 тис.
Distributed Caching for System Design Interviews
7:04
ByteMonk
Переглядів 6 тис.
System Design Interview: Design Ticketmaster w/ a Ex-Meta Staff Engineer
58:39
Hello Interview - FAANG Mock Interviews
Переглядів 16 тис.
Vortex Cannon vs Drone
20:44
Mark Rober
Переглядів 12 млн
Как установить Windows 10/11?
0:56
Construct PC
Переглядів 1,4 млн
Первые продажи Ryzen на Ozon и первый возврат! 😱
13:17
Герасимов Live
Переглядів 27 тис.
It's embarrassing how much I like this thing.
12:19
Linus Tech Tips
Переглядів 902 тис.
Тестируем Gravis Ultrasound... ну почти.
48:18
Дмитрий Бачило
Переглядів 27 тис.