Choosing a Database for Systems Design: All you need to know in one video

  Переглядів 17,596

Jordan has no life

Jordan has no life

День тому

Oh honorable mention for elastic search when you need an inverted index for full text search but you shouldn't be using that as a primary database.
Make sure to use HBase when you make your Pornhub clone!

КОМЕНТАРІ: 75
@pieter5466
@pieter5466 4 місяці тому
Two things make this video stand out for system architecture interviews: 1) general knowledge of the available options, with arguments for and against 2) enough in depth knowledge to go deep and impress
@user-ue9ri9ip1v
@user-ue9ri9ip1v 2 місяці тому
One of the best videos of its kind. small inaccuracy: Hbase being wide-column store actually store column families together, not individual columns.
@jordanhasnolife5163
@jordanhasnolife5163 2 місяці тому
Appreciate it!
@FranckPachot
@FranckPachot 6 днів тому
You are sharing awesome content. Great to link to for short and acurate explanations. Would be great to see more on Distributed SQL (you did Spanner but there's also YugabyteDB, CockroachDB, TiDB, YDB). And on PostgreSQL compatible databases (you did Aurora but there's also AlloyDB, Neon, YugabyteDB)
@jordanhasnolife5163
@jordanhasnolife5163 5 днів тому
Nice idea! And thank you!
@rajrsa
@rajrsa 10 місяців тому
I've gone through all your concepts and interview video and this video did a great job of summarizing everything! Thanks for everything, giga chad! :P All the best, y'all! Let's get this bread! 🚀
@ritwik121
@ritwik121 Рік тому
Glad you are back with system design videos😭😭
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
We'll see about that one buddy, these have been covered mostly
@JeT2686
@JeT2686 Рік тому
I gotta say, this summary video is great! As much as you dread redundancy here, I at least got a ton of value of out of it. The material is fantastic for reviews Kudos, and great stuff!
@akhilkhubchandani2632
@akhilkhubchandani2632 7 місяців тому
Great work and amazing video! Could you also make more low level design videos?
@mnchester
@mnchester Рік тому
Thanks for this video man! While I agree with you that it'd be better to watch your more in depth videos, this compilation video works great for a quick recap right before going into your System Design interviews
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
Glad to hear!
@pl5778
@pl5778 Рік тому
this is an awesome video! thanks for such a great summary
@thktomska
@thktomska 5 місяців тому
This is what i'm look for! Great quality - thank you very much!
@arshadhammad
@arshadhammad 4 місяці тому
Thanks for the nice series. I really liked your videos
@luiscarlosricoalmada4296
@luiscarlosricoalmada4296 Рік тому
I finished the whole series :) , wish me luck on my System Design interview
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
You got this!
@andreybraslavskiy522
@andreybraslavskiy522 9 днів тому
Thank you for the great content
@raj_kundalia
@raj_kundalia 5 місяців тому
Thank you, Jordan!
@roywastaken
@roywastaken Рік тому
Thank you senpai 🙏🏽
@Stella-se1lg
@Stella-se1lg 10 годин тому
Salute😊
@sohansingh2022
@sohansingh2022 4 місяці тому
Thank you buddy!
@amospan14
@amospan14 Рік тому
Really good one! Thank you Jordan! =)
@sarfrazz34
@sarfrazz34 Рік тому
Thanks for the video man! it was informative could you please create a video if possible on scenario-based database usage I am really confused about where to properly use sql db and nosql db I am little clear that if we need ACID properties then best is sql. but I am not completely aware of different other scenarios on where to perfectly use sql and nosql dbs. if you also have any resources please share I am not able to find a good one
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
I think you basically just expressed it yourself - "if you need acid properties use sql" - if data integrity is the most important part of your application, SQL is the way to go. Otherwise, NoSQL can offer greater speed while sacrificing some of these requirements.
@sarfrazz34
@sarfrazz34 Рік тому
​@@jordanhasnolife5163 Thanks Jordan I am thinking of a scenario in case of storing product related things I see nosql is best suited as different product could have different properties, but how about managing the inventory for the product? in this case since it requires acid props to manage the inventory count properly, should we maintain the inventory count details alone in sql DB?
@420_gunna
@420_gunna Рік тому
16:30, I haven't heard of column compression being used for image data in the way that you describe here, any pointers on what you were talking about when you mentioned this?
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
Hey so I don't actually mean to compress the images with column compression: I just mean having a column containing multiple images means that you only have to fetch the images themselves as opposed to potentially a lot of metadata that may come with them (if you were to fetch a row at a time)
@BenLernerOfficial
@BenLernerOfficial 11 місяців тому
​@@jordanhasnolife5163 I paused the video at this point in confusion as well, because I'm afraid the example doesn't make much sense. In the query you described, you only want to get the thumbnails associated with a specific video, so you would either implement that with a relational table (full_video_id | thumbnail_id, where one full_video id is associated with one or more thumbnail_ids) or you'd store a list of the thumbnail_ids (pointing to the actual image data in, say, s3) on a document representing the full video. The only situation in which you would possibly want to store images in a column is if you'd want to somehow query ALL thumbnails across ALL videos, but that is not the situation you described - you described getting the thumbnails of a SINGLE video. That would be OLTP/row-based, not OLAP/column-based. Also, columns typically contain primitives (so you could, for example, perform an average across a column of floats)
@jordanhasnolife5163
@jordanhasnolife5163 11 місяців тому
@@BenLernerOfficial Yes sorry, this is assuming that one video might have many thumbnails (e.g. to create one of those gifs that you see on UKposts now). Sorry this wasn't clear, everything that you've said is accurate.
@jordanhasnolife5163
@jordanhasnolife5163 11 місяців тому
Another common use case is to load all thumbnails for a user's channel, such as if you were to click my channel page.
@chits006
@chits006 6 місяців тому
Great Video, One question, where can we learn about db schema design? Some basics and exercises would be good, any online course you recommend?
@jordanhasnolife5163
@jordanhasnolife5163 6 місяців тому
I'd just look at database docs and existing engineering blogs from reputable companies!
@piercef7343
@piercef7343 Рік тому
Kudos!
@tamarapensiero8048
@tamarapensiero8048 Рік тому
Hey Jordan, just started watching every video you've created. I love them. I'm wondering how I could get in contact with you as soon as possible. Id like a couple minutes of your time if possible. Thanks x
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
LinkedIn would probably be best, my name is Jordan Epstein
@tamarapensiero8048
@tamarapensiero8048 Рік тому
@@jordanhasnolife5163 thank you, sent a msg ^_^
@ravindranaths513
@ravindranaths513 15 днів тому
Could you please make a video on Wide column vs column family vs columnar vs column oriented DBs with some examples
@jordanhasnolife5163
@jordanhasnolife5163 14 днів тому
Hey! I think I probably mentioned this more in the 1.0 series but not sure that it deserves a full video, just look up images of the formats :)
@ravindranathsirisala6408
@ravindranathsirisala6408 14 днів тому
@@jordanhasnolife5163 , please give me link of that video
@whirr9755
@whirr9755 Рік тому
huh, i subbed for day in the life vids 😒
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
I'll sell out soon I promise
@franklinyao7597
@franklinyao7597 11 місяців тому
What if you need a NoSQL store with strong consistency? You need Hbase or MongoDB. And if you need a db optimized for heavy reads, you may need MongoDb since it uses B tree.
@jordanhasnolife5163
@jordanhasnolife5163 11 місяців тому
Mongo might be better for reading sure, but I caution you from saying it and HBase are strongly consistent. Hadoop has some weird writing thing that kinda makes it strongly consistent, and maybe you can configure mongo to do so, but Hadoop writes aren't like actually achieving consensus (and afaik mongo isn't either), so it's kinda just not great for that haha
@franklinyao7597
@franklinyao7597 10 місяців тому
@@jordanhasnolife5163 what is that weird writing thing?
@jordanhasnolife5163
@jordanhasnolife5163 10 місяців тому
@@franklinyao7597 You like write to multiple nodes at once and only get a success message if it's hit a certain amount of them, but the write still goes through on some of the nodes even if you don't meet the success threshold if I remember correctly
@zuowang5185
@zuowang5185 3 місяці тому
why redis instead of just using the hashmap in your program? for cross process communication?
@jordanhasnolife5163
@jordanhasnolife5163 3 місяці тому
Well sometimes you want many servers, sometimes you want replication, sometimes you want a writeahead log, sometimes you want database partitioning
@luli829
@luli829 4 місяці тому
how do you gain some much knowledge in system design? really amazing!
@jordanhasnolife5163
@jordanhasnolife5163 4 місяці тому
I have no life! No but actually, I just have optimized my knowledge specifically for the interview haha - I'm sure you all are better software engineers than me
@luli829
@luli829 4 місяці тому
@jordanhasnolife5163 lol no. I'm trying to learn from you and get better :)
@sachin_yt
@sachin_yt Рік тому
Finalyyyyyyyyyyy
@ashwint959
@ashwint959 2 місяці тому
What about distributed sql databases like spanner/cockrorachdb?
@jordanhasnolife5163
@jordanhasnolife5163 2 місяці тому
I think these are probably worth knowing about from a software engineering perspective but probably not worth using in a design for an interview. Spanner (can't speak for cockroach) is great, but I think it may be too niche to be fair game here (since it doesn't exactly have a "dedicated" use case).
@ameygoel1
@ameygoel1 Рік тому
bro I watched your earlier videos in 1.25x speed and now your normal voice feels weird and slow. Nevertheless great and orderly content. Cheers! Would recommend others too :)
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
Damn bro 1.25? Gotta speed that up to 2
@danielvega-myhre4201
@danielvega-myhre4201 Рік тому
Are your slides available to view/download somewhere?
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
In my channel description
@chits006
@chits006 6 місяців тому
Why no honorable mention of Dynamo & BigTable ?😀
@jordanhasnolife5163
@jordanhasnolife5163 6 місяців тому
Mainly because bigTable = hbase and dynamo = Cassandra (it actually may not assuming you're talking about dynamodb but theres no docs on internal implementation afaik)
@prathamsinghal5261
@prathamsinghal5261 20 днів тому
Scylla DB ??
@jordanhasnolife5163
@jordanhasnolife5163 19 днів тому
I'd consider it a Cassandra clone
@rydmerlin
@rydmerlin Рік тому
Are trees with more than two children for a given parent still considered binary trees?
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
Nope
@effy1219
@effy1219 Рік тому
hahahah i just like how he call us , you lazy f**s and do it
@mvp4gman
@mvp4gman Місяць тому
No S3 🥲
@jordanhasnolife5163
@jordanhasnolife5163 Місяць тому
Not a database - though technically some cloud native data warehouses are being built using s3 as the storage layer and parquet files
@ladyv890
@ladyv890 Рік тому
Yay for Women!
@jordanhasnolife5163
@jordanhasnolife5163 Рік тому
Just defended women against a mysognist on Xbox live the other day
@ladyv890
@ladyv890 Рік тому
@@jordanhasnolife5163 Yay Jordan! 🤗 lol
@SreekantShenoy
@SreekantShenoy Місяць тому
This guy stores! 🫣
Which Database Model to Choose?
24:38
High-Performance Programming
Переглядів 38 тис.
[실시간] 전철에서 찍힌 기생생물 감염 장면 | 기생수: 더 그레이
00:15
Netflix Korea 넷플릭스 코리아
Переглядів 38 млн
КИРПИЧ ОБ ГОЛОВУ #shorts
00:24
Паша Осадчий
Переглядів 4 млн
Google system design interview: Design Spotify (with ex-Google EM)
42:13
IGotAnOffer: Engineering
Переглядів 934 тис.
System Design Interview: Design Dropbox or Google Drive w/ a Ex-Meta Staff Engineer
58:08
Hello Interview - FAANG Mock Interviews
Переглядів 5 тис.
Design Twitter - System Design Interview
26:16
NeetCode
Переглядів 436 тис.
8: Design a Web Crawler | Systems Design Interview Questions With Ex-Google SWE
32:05
System Design: Design a URL Shortener like TinyURL
16:00
Code Tour
Переглядів 74 тис.
Learn Database Normalization - 1NF, 2NF, 3NF, 4NF, 5NF
28:34
Decomplexify
Переглядів 1,6 млн
Нужен ли робот пылесос?
0:54
Катя и Лайфхаки
Переглядів 851 тис.
All New Atlas | Boston Dynamics
0:40
Boston Dynamics
Переглядів 5 млн
Що покаже Apple, гнучкі айфони та Windows переходить на ARM
17:49
Ноталка Шелягіна
Переглядів 58 тис.