Database, NoSQL RDBMS vs NoSQL Databases Explained!
This is abhishek in this video. We will be talking about what are the differences between an rdbms database and a new sql database. We are a little late in creating this video, because no sql databases have been there since a while. Now and mobodb is one of the most popular example im pretty sure that all of you must have heard about so in this video ill. Give you a brief overview of how you know you can judge, based on your application requirement, whether you should go with an rdbms uh database or a nosql database. So lets start by understanding what these databases are and how they differ. What are the characteristics of both and what are the pros and cons of both of these databases so starting with rdbms? You know these databases have been here since a while now and they are built well tested, uh widely implemented in a lot of applications. Oracle, mysql sql, ibm db2 all are based on rdbms concept, and these are some of the most excessively used databases out there in the industry right now. Our website, straightrank.com, is also using mysql database now, based on the complexity of the product that we are building and the requirements i wouldnt say complexity, but the need of unstructured data led us to start using a nosql database as well, which is my mobodb. So now we have two databases in place, so lets focus on rdbms database first. So, as i said, it is mature, proven, well tested and widely implemented.
So it wont be very difficult when you want to implement a rdbms database and you can easily find tutorials. You can easily find well written guides on whatever stack that you want to implement. It can be an old stack like lampstand, or you can also use a mysql database or oracle databases with the modern react. Js and node.js applications as well. So rdbms works based on tables, so we all know we must have. All of you must have studied this in your college, or you know, while doing your jobs, so rdbms data is based on tables the structure. The schema is created and various tables that created tables have a relationship between them, and that is the core concept around rdbms relational database management system. That relationships are created between tables. The schema is a fixed schema that you have to define in advance what a structure! Your table will have uh. That means you know all the columns that will be there in the table. What will be the data type of that column uh? What sort of data it will store in itself? So all of these things have to be pre sent. It has to be fixed, then uh to access the data from rdbms. We use sql again, something that is widely used and again a lot of you might already have knowledge about sql. It is stands for structured query language, which is used to insert update, read data from idbms databases.
Then another very important thing that is about rdbms is it supports, transaction and asset guarantees are provided. Now, when i say acid, i mean atomicity consistency, isolation and durability. So these are very uh important aspects when we are creating a large enterprise software. So these things are very important, for example, if youre creating something for financial market or, if youre, creating some application, which involves uh serious data transactions, then rdbms data base is a wise choice, because data consistency is taken care of very well using rdbms. While you know a lot of things are sorted in new sql as well, but still i would recommend that go with an rdbms database. Oracle is a very good choice, its a paid software. But if again, you know if youre building something big, if you have, if you the security and the the structure, the consistency of data is very important for you. Then you have to go with rdbms. Coming to the cons, i would say, rdpms is a little less scalable compared to nosql, distributed setup is a bit tedious and mostly when we use rdbms, and what i have seen around is that people scale vertically they dont go with horizontal scaling. The scale vertically. That is, they increase the power of the machine that is running their rdbms database rather than creating a distributed setup with rdbms database, because the parent child setup doesnt work well with rdbms people have such setups, but then, in that setup the primary machine is used for Insertions of data into the databases but read is supported by the the whole cluster that is set up.
So when i say cluster, that means that there are multiple servers running the same database setup, the same rdba setup and replicas are created, so some rdbms databases also provide replica features, but not all provide that. So i would say uh. To summarize this, i can say that rdbms is not cloud ready. There is no sp databases, because these are modern databases. They are cloud ready now coming to know. Sql now, uh nosql doesnt mean that it is just you know it doesnt support sql. There is a different way of querying data from these databases, but, just to you know, keep it drastically opposite the name nosql, you know immediately informs that. Okay, you know this is not the traditional databases. The primary feature of a new sql database would be that it can store data without a structure, and that is something that in itself can be confusing, but once you understand it, it will be. It is one of the best features that the new sql database has that you dont have to worry about uh the structure of your data beforehand, for example, if youre creating a new application, if youre developing a new application and youre not yet sure that what is What will be the data structure of the data that you are gon na save in your database? So in that case, mobile db or couchdb red is, there are so many nosql databases. Those are very good choice and theyre easily available on cloud.
There is no such liability of maintaining a relationship, so the data insertion is super speedy. Sometimes so there are different databases in noise field as well, which are right, intensive or read intensive. So you have to choose, based on your use case, whether you want data. If you want to, for example, collect an analytics data, so you have to pick some database in no sql, which is uh. You know which conducts right uh operations very fast, and if you have a requirement where you want to uh, read data too much. So you know, based on that, you have to decide what database you want to have ease of use is a very big plus point, which ive already mentioned. That deployment is easier its available on cloud. The pricing is cheaper, the scalability part is sorted. You dont have to worry about the structure of data, so, as of use, is a big plus point scalability again because its available on cloud you dont, have to worry about. How will i scale my database once my application starts getting too much traffic? The data that i said is unstructured so its mostly in json format, although there are different formats. So the main three four types of format that are available in new sql is document storage, so document style storage is done again in form of json data. Then there is key value pair, which is followed by redis, which is a very popular in memory, cache system as well.
Then there is wide column, storage and graph storage. Graph storage is in which the data is stored in form of graph notes and all that and its very useful when it comes to searching data from an oscillate database. Apart from this, as ive said multiple times that nosql databases are available on cloud, so they are easily scalable and horizontal scaling is also very easy and theyre. A very good choice when you dont have to worry about how to maintain the database and all that stuff. Now, coming to the differences of when to choose what that is very important that you should know, although ive covered most of the points in detail in this video, so you should have a better idea by now that what to choose when, but still ill cover a Few points more to help you better decide uh, which one to choose for your next project or application or in general. You know you should know the differences if you are going for an interview right. So if you dont want to get involved into writing too many queries to many complex queries which involves joins and all that stuff uh. Then nosql is a very good choice in case of generating reports from many uh tables, its very easy to use a new sql database than it is in an rdbms. The next difference would be a deployment. If you have enough time to manage a rdbms database which is deployed on a high resource, intensive machine, then its okay, you can choose rdbms again if you are into developing a enterprise level solution which involves financial transactions, or you know, data which is very important to Have a better consistency with then rdbms is a good choice.
Otherwise, no sql databases are a good choice because theyre easily available on cloud as service you can pay as you go. Scalability is easier, but, yes, you know at times the consistency part can be missed. A little bit when it comes to workload, i think nosql databases perform well than rdbms databases. Although ive seen companies where rdbms databases like oracle are being used where data is, you know coming in high volumes and its still able to manage it using partitions and all that stuff. But yes, new sql databases are a better choice than the high when your application is a high work load in case of nosql. You dont have to worry about uh normalization of data. Denominate data can be saved. Structure is not a issue in case of rdbms. You have to make sure that tables are normalized and relationships have to be set. So that is again one overhead that people, i think you know in the modern era dont want to get into, and the last point is that rdbms databases are less distributed, whereas nosql databases are more distributed. You will find a nosql database hosting in almost all the popular hosting services these days in aws, google or seo or any other popular service. You know in one click you can do the setups. I would recommend movidb address, as it is a very great service, again cloud based setup, which mobile db is providing themselves super cheap, initially, free, almost and then you can scale uh you know, based on your requirements, has a very good reporting dashboard.
We are personally using that so thats. Why im you know promoting it so much, but thats, a very good choice when it comes to you know using nosql databases in redis as well. Redis lab is also providing the same cloud based offering in which you can choose your server to be set on aws, such as the ocean or different other services cloud hosting services. It is not that expensive to start with free to begin with, and then you can pay as you go, so these are very good options in case of nosql and now you know what differences uh to look for what uh points to focus on when you have To choose what database, be it rdbms or nosql. So with this lets end this video. I hope you like this video if you have enjoyed – or if you know this video help you in any way do give it a thumbs up. Share it with your friends and please do subscribe to our youtube channel. Almost 94 of the people who watch our video. Do not subscribe, we just get a conversion of six percent, which is very less and im requesting you. You know to press the subscribe button, press the bell icon so that you get notified by youtube.