MongoDB for Developers with Python Transcripts
Chapter: What is NoSQL?
Lecture: NoSQL history
Login or
purchase this course
to watch this video and the rest of the course contents.
0:01
Let's begin our exploration of MongoDB at a high level with the why and history of NoSQL in general.
0:09
So if you look around the software development landscape you'll see that people when they talk about
0:14
how are we going to design our application frequently say well let's assume that we have a relational database,
0:19
now we can discuss what type of ORM should we use, or should we use an ORM at all, or should we use micro services or things like this.
0:27
Basically, the fact that we're starting from a relational database is considered to be an axiom of software development,
0:34
we have data, it goes into relational database now let's talk about the architecture, now let's talk about scaling,
0:39
let's talk about performance and so on. And just to drive home how strong of a statement that is, an axiom, recall the exact definition—
0:46
a statement or proposition that is regarded as being self evidently true, it's just clear that you start from a relational database.
0:53
So what are the things I hope you take away from this course is that the database style, the database engine is a choice,
1:01
it's a really important choice that has actually super important and far reaching implication for your application.
1:07
So I want to sort of break this mold that starting from a relational database is an axiom. Sometimes it makes sense, sometimes it's perfect,
1:16
but a lot of times as you'll see throughout this course starting with a document database is actually a better choice.
1:21
Now, what is NoSQL? Ask five people what NoSQL is, you'll probably get five different answers back.
1:27
Some people will say, well the 'no' stands for 'not only' so NoSQL is 'not only SQL', well that's a great open minded view of the world,
1:38
but I'm sorry to say that's not what NoSQL is. Maybe it means it doesn't have SQL, maybe it means the system operates without the SQL language, right,
1:48
without select * from this etc, without that language. If we look at the history, I think you'll see that this is also not the case.
1:56
Here's a toaster, this toaster operates without SQL, is it a NoSQL toaster— I don't think so!
2:02
And of course not, it's not a NoSQL toaster, it's just a toaster. NoSQL doesn't mean it operates without the SQL query language
2:09
in fact, I believe that document DB, Microsoft's document database that runs in Azure, actually more or less uses
2:17
a flavor of the SQL query language to query it. So no, it's not about excluding this SQL query language,
2:23
it's something entirely different, so let's next look at the history, and I think you'll have a really good idea of what NoSQL is
2:30
and maybe it will come to a little bit closer agreement on the definition of NoSQL.