How to Choose a Database (SQL vs. NoSQL)
Ғылым және технология
In this video I will describe my process of choosing a database between row and column oriented SQL databases, as well as NoSQL databases.
For convenience here are the chapters:
00:30 - SQL databases
00:38 - Row oriented databases
03:41 - Column oriented databases
05:14 - NoSQL databases
05:25 - Document databases
08:00 - Sharding
09:16 - Streaming databases
=== Links ===
☕️ Discord
links.withmarko.com/discord
☕️ My free Mac window manager
links.withmarko.com/one-menu
☕️ My Notion Template
links.withmarko.com/notion-te...
☕️ Wallpapers:
withmarko.com/wallpapers
=== Business Inquiries ===
Email: business@withmarko.com
Instagram: @withmarko
Пікірлер: 125
Great stuff, +1 for next episode about vector, graph, object oriented etc. databases!
@anashe5417
Ай бұрын
uuuuh something about vectors or graphs would be nice
@richardkraus5557
27 күн бұрын
yes please! make a video about graph databases
@gborgesw
11 күн бұрын
Totally! Would love one about these!
For others out there, normalization isn't there just because of "limited disk space". The reduction of data duplication is to help prevent anomalies (i.e.: potential corruption) from inserts, updates and deletes. I'm sure Marko knows that, but for those just learning, that's another aspect to why normalization is often done.
Nice explanation, Marko! Personally, I choose pretty simply: if I need joints I stick to SQL, if not, I choose NoSQL :)
@withmarko
Ай бұрын
Fair 👍
Absolutely love how you broke these down so, YES! I would definitely appreciate a video or videos on other database types. As an AI Engineer, I work with vector databases a lot. Hearing another perspective on how they are built and how they work would definitely be of benefit. Cheers.
@withmarko
Ай бұрын
Hey thanks for the comment! :) I would love to do another deep dive soon! :)
honestly super helpful high level summary for me! Love to see more of this style
That was awesome, Marko! I'd love to see more content about databases and their use cases for sure! Hvala i lijep pozdrav! :)
Definitely want a follow-up video. I really like the way you explan things and would enjoy watching a deep dive.
this was very informative, thank you marko. Keep em coming!
Thanks Marko, I test the builds of SQL based scripts so it’s great to get an understanding of the design choices behind them.
Amazing video! I'd really love to see the second part with the other types of database. Really good format in my opinion!
A great explanation of different types of databases. Great work, Marko!!
@withmarko
Ай бұрын
Thanks!
This is a masterpiece, I have not seen different DB engines broken down in a simplest form like this. Great video ❤️
@withmarko
Ай бұрын
Hey thank! I'm glad you enjoyed the video :)
Mannn what a class you just gave. Great explanations!!
This is really nice. Nice byte sized (pun intended), cohesive and straight to the point. It doesnt get into unwanted depth and focuses on the important distinction between the DB types. Well done
@withmarko
Ай бұрын
Hey thanks, I really appreciate this comment 🙏
Awesome! Keep going with this format.
Great explanation! Love this type of content.
Bro this video came perfect, i'm about to choose a databse
this was a very nice video, really enjoyed it
awesome explaination, thanks for that, it made all the documentation that i have read more clear.
loving the more technicals vids!
Nice overview! Gotta show my students this.
Hey Man. I am living in Oslo, and I've been following you in your page since a year. Thanks for the valuable information 🙂.
Nice and simple explanation. TOP!
Great video and explanation!
Great video, learned some new stuff 🙌
Would definitely like to see more videos like this.
Great videos educational and entertaining!
Wow, I learn something new and interesting today, thanks.
this is really great video Thank you
Great video, thanks!
Nice! good info to take note! As always superb content marko! From Philippines! (Amping = "take care")
Hi, amazing video. What graphics tablet are you using?
Very Helpful Video:)
Great explanation about the different databases :) With that title I was expecting some real example about some specific use case, the db you choose and why.
@withmarko
Ай бұрын
Oh, thanks for the comment :) I changed it to "How to Choose a Database" to be clearer!
Hi Marko, love you videos, they are great!! Anther thing, can you tell me please what is the name of your draw program that you used in this video? Thanks!!
Amazing Video!
super video Marko
Thank you so much for making this video and explaining it in detail. I am a novice at using DBs and this helped clear some questions I had. Please make more videos like this on different subjects. I have used PrismaDB (SQL) in a React app that I have made for a URL shortener I wrote in TypeScript. I like the interface Prisma uses does noSQL offer an interface like this?
Side note: I think the chapters need to be 00:00 format for the video to update the chapters on the video itself. The 0:00 still behave as links to those parts of the video, but you get the visual chunking on the play timeline if you do 00:30
@withmarko
Ай бұрын
Hey thanks, updated :)
@cody_codes_youtube
Ай бұрын
@@withmarkoOH!! That wasn’t it. It didn’t chapter because you didn’t have a beginning. You need to include 00:00
It was an interesting and informative video.
Bro we need this kind of vlogs also
I have always had a bit of hard time in understanding the reasoning behind choosing a right database. I am like 3.5 years into software engineering profession and I recently started studying a book on this very topic as I want to be able to answer questions like why I chose a certain database. Your explanation made me understand that, been following you from start and love your videos as always. Looking forward to the next episode.
@withmarko
Ай бұрын
Hey thank you for such a nice comment! I'm glad the video was useful :) Good luck on your dev journey :)
@faizansaleem4423
Ай бұрын
@@withmarko Thank you :)
That's it. I'm getting a drawing tablet! What model did you get?
What is a drawing table you acquired? How it feels to use so far, would you suggest for someone else to use?
Please make this kind of videos more often
Is there perhaps an app on the iPad that can do this too, where you can start a screen recording and the background is removed?
Keep posting like this
Great explanation. The streaming dbs are used for notifications? What are the different use cases for them?
@withmarko
Ай бұрын
Thanks, yes notifications are one use case for sure, if there is any communication between 2 services where one of them is expected to be unavailable for some time, or not be able to process data as quickly as it’s arriving, it’s a good idea to have a streaming database in between
Interesting take on message brokers as databases...
Hahaha insane, tomorrow I have a meeting with my internship to choose a DB for my bachelor thesis hahahaha. I'll enjoy this one :p
@withmarko
Ай бұрын
Awesome, great coincidence 😃
this is great... now it makes sense that kafka would be used for a payment processing application
whoo great video@Marko you really did explain it well !!!
big stuff,.. also the background video would be perfect as a separated video to just chill
Great video
Great video, what tablet did you get?
@withmarko
Ай бұрын
Hey thanks 🙏 I got the Wacom intuos 😃
Hi! What are the specs of your MacBook? 🙂
Not clear how to choose to me... You can denormalize data in relational db. You can also persist a tree of objects in json in a clob field. You can do partionning and i guest sharding in relational database. So how to choose ? Are NoSql db really more performant than relational db in that case ?
I cant tell you how many people I have seen just by default go with NoSQL as its just "better" than SQL, and for some reason the popular notion is SQL is outdated. Good, short video btw !!
Hmm i just noticed i used mongodb like a sql db with refs all over place lol. So usage of mongodb for ecommerce i would save actual user data in documents where they are always used together, keep track of that use cases and update all of them if user changed these data, correct?
@withmarko
29 күн бұрын
Hey that's a good question! If you have a very high number of reads and you are always reading a few documents together, it makes sense to just bundle them up in a single document. But if you don't have very many reads, it's not worth it.
Did u delete some video in ur channel, cus i remember there is a rainy day vlog which i really enjoy to watch has disappeared😢
Do your laptop gets warm?
Great explanation! Thank you! 🌟
Now i'm using Graph Relational Database like EdgeDB foe my project
What Tablet Is That?
What's your view on using Golang as a backend?
@withmarko
Ай бұрын
It’s a great choice, I wish I knew that language better, but I really like the design philosophy of it
bro can you talk about internship offers ?
wow, so cool
You know, just asking, but where do you work now??
@Iker_Tech
Ай бұрын
He's working at kahoot
@Le0chkh4idze
Ай бұрын
I'm Pretty Sure He Works At The Kahoot Office In Norway!
@withmarko
Ай бұрын
Yep that’s true 😃
Normalisation does have the advantage of saving disk space but the question is, was normalisation designed with the main goal of saving disk space? I don't think so. I'd argue that the main design goal was avoiding data inconsistency due to data redundancy over space efficiency. So I personally wouldn't claim that "normalisation" was designed as a means to save disk space.
How many hours of coding does your laptop lasts on battery?
@withmarko
Ай бұрын
Hey if I’m just coding, not running some crazy docker containers, then 10 hours easy
Bro which mac are you using?
@withmarko
Ай бұрын
Hey this is an M1 Pro 16in
@hezypubgmobile
Ай бұрын
@@withmarko Thanks:)
Oh yeaaaah🎉
I'm learning SQL, want to be a Data Analyst
Hey Marko !
@withmarko
Ай бұрын
Hey 😃
If anyone wants to get into the nitty gritty things of exchanging/storing/mutating data between systems, highly recommend the enterprise integration patterns book
@withmarko
Ай бұрын
Hey thanks for the recommendation 🙏
I thought Cassandra was a NoSQL database?
Sir if you earn 800k Kroners a year before taxes then what is your take home pay after taxes and deductions in Norway? Plz reply. Thanks a lot.
@withmarko
Ай бұрын
Hey please google “income tax in Norway” 😃
@karliszemitis3356
Ай бұрын
Depends on tax deductions. But generally around 45k nok/month
hi
Hello Marko
❤
If I am asked, I always say SQL. I'm a SQL DBA damnit!
hi marko :)
@withmarko
Ай бұрын
Hello 😃
@chedilahmer
Ай бұрын
@@withmarko please more of this videos i learned so much 🥰
second
I guess I am the first.
fest
This explanation is far too simplified, even though I know it's difficult to do in 11 minutes. SQL databases have many decades of optimization behind them and what they do cannot be done any faster! If a system claims to be faster, it leaves out essential functions (see “ACID”). The decision in favor of NoSQL should probably mainly made in the case of unstructured or weakly structured data. You also have to be sure in advance that you won't need complex queries later on. I fear that the decision in favor of NoSQL is mainly made because it is easier to use... which is the wrong reason! By the way, the reason for normalization is not storage space, but speed and data integrity.
@nikichashadow
Ай бұрын
thankks for explaing
@withmarko
Ай бұрын
It’s very oversimplified of course haha, KZread is not university. The sentence “what they do cannot be done any faster”doesn’t carry much information. Don’t criticize and then hedge like that🙃 I totally agree I missed the point with data integrity, that’s a big one. Thanks for the comment, I appreciate it 🙏
@Fran-kc2gu
Ай бұрын
Yeah, pretty basic information every developer should know
@Apenschi
Ай бұрын
@@withmarko “what they do cannot be done any faster” carries the information that a database can't be faster without loosing essential features. If you don't need these features, because you have document-like data and only need primitive read requests, it's absolutely fine to choose a NoSQL Database, BUT you should be aware of what you are loosing. So, in a video that is comparing the two, you should at least mention the advantages of SQL Databases, what would cost only 2 mins more. That said, I appreciate your work and already watched a lot of your videos and enjoyed them!
I think that explaining how SQL / NoSQL databases work is a bit insulting to your viewers :D
@nikichashadow
Ай бұрын
i am pesonaly not good with backend so it kinda helped me
@withmarko
Ай бұрын
Haha, didn’t mean to insult 😃 I know people in my audience are smart, but then again… I wanted to try the drawing tablet 🤓
@nikichashadow
Ай бұрын
@@withmarko I hope it serves you well