 Hello and welcome to a session on an introduction to Mongo Database. This is Dr. Anita Poojar, Professor in Computer Science and Engine Department at Walchin Institute of Technology, SolarPore. At the end of this session, learners will be able to acquaint themselves with the concepts and features of MongoDB. They will be able to compare RDBMS and MongoDB. These are some of the prerequisites Students require the basic knowledge of database concepts, as well they require the knowledge of relational database management systems. Now, what is MongoDB? MongoDB is an open-source, high-performance document-oriented database that works on the concepts of collections and documents. It was developed and supported by Nivea based organization named Tengen, now known as MongoDB-ing. Now, the latest version of MongoDB is 4.4 onwards. MongoDB is written in C++. Why MongoDB? Why MongoDB is becoming popular nowadays among the developers? If you see the market trend of MongoDB, almost developers from all fields, they are using MongoDB. So, let's see what are the characteristics of MongoDB, which makes it so popular. MongoDB is a document database. As I told you, it is a document-oriented database. That means it is a non-relational database. It does not store data in the forms of rows and columns. It stores the data in the form of document. One document is the data of one particular entity, or if it is a student database, we can say that one document is containing the data of one student. It is built on scale-out architecture. That is, it supports horizontal scaling. It can be extended to multiple number of systems. This is most suitable. MongoDB is most suitable for building the internet and business applications. Most of the internet and business applications, they require high scalability and huge amount of data. Since MongoDB is horizontally scalable, it supports huge amount of data also. Data storage as well as data retrieval. So, it's a powerful way to store and retrieve data, and that too, it's very fast as compared to other databases. It is free through open-source community. That is, it works on all types of computing platforms, both on premise as well as in the Cloud. That is, both on private as well as public Cloud. For example, AWS, Azure, Google Cloud, and so on. It is supported by all major languages, and it can be accessed from all major ETL applications or ETL softwares. Now, what are the features of MongoDB? The most important feature of MongoDB, as I told you just now, that it is a non-relational database. That is, it is schema-less. It has no static or predefined schema. It can deal with large volumes of rich varieties of data, especially unstructured data which is nearly 80%. It supports horizontal scaling, that is, it supports high scalability. It's good with complex data structures. That is, it can handle blog posts and even comments. It provides faster access of data, and it's very easy to use. So, ease of use and faster access of data as well as non-relational features are very important of MongoDB. Cross-platform, MongoDB is cross-platform. It can work on any platform. As I just now told you that it is a non-relational database. It's a distributed database. That is, it stores data on multiple systems. In terms of the fragments of data, as well it supports replication of data. It's a no SQL database, and update operations are very fast in MongoDB because in-place update operations take place. Now, what is in-plus update operations? That we will see in the further sessions when we study the crude operations. MongoDB supports replication as well as auto-shareding. So, replication and auto-shareding, they are mainly very useful for high availability of data. When the data is replicated on multiple systems, or it is fragmented and kept on multiple systems, that means it gives very high performance in terms of availability and speed. It supports more diverse data types. MongoDB enables to build applications faster. It removes the need of complex object-relational mapping that is ORM layer. Now, what are the strong features of MongoDB queries? Now, JavaScript functions can be embedded into queries. They can be written in queries. Queries also support the storage and retrieval of geodata, that is, locations. Then, MongoDB queries provide powerful aggregation operations and framework for data analysis. They can use capped collections also. They are easy to use in object-oriented programming languages. MongoDB provides grid file system to support the storage of even binary data, that is, maximum storage of binary data can be up to 4MB. Now, let's see what is the trade-off between MongoDB and RDBMS. So here, on the x-axis, you can see that functionality can be seen and when y-axis performance is seen. And you see that RDBMS performs very high functionality, whereas MongoDB provides very high performance in terms of scaling and availability, high availability. Now, some of the terminologies used in MongoDB are database, since it is a database management system, collections, documents, fields, and primary key, wherein we can set the default key as a primary key, very similar to RDBMS. Now, let's pause a video for a while and try to think on what are the differences between MongoDB and RDBMS. So these are some of the differences between MongoDB and RDBMS. So MongoDB is a document-oriented model. It stores the data in terms of the collection of documents. RDBMS is a tabular-oriented model because it stores the data in tables in the form of rows and columns. MongoDB uses dynamic schema, that is, it does not have any predefined schema, whereas RDBMS strictly goes on schema. It uses static schema. MongoDB are no SQL databases, whereas RDBMS are SQL databases. MongoDB, since they are no SQL databases, they do not support transactions. Whereas RDBMS, since they are SQL databases, they support transactions. Similarly, joins are also not supported by MongoDB. Whereas RDBMS support the joins of the tables. MongoDB, they are highly scalable. As I told you that it supports horizontal scaling, so it can scale to multiple number of systems. Whereas RDBMS does not support scalability after a certain level. MongoDB, they are known for high performance and speed. Whereas RDBMS, they are known for high functionality. Now, let's see where MongoDB is used in what type of applications MongoDB is used. So MongoDB, they are used in analysis of big data, content management systems, user management systems, in geo data, where all the data's are stored in the form of locations. It is used in forms data, log data. They are used in building mobile applications, gaming applications, e-commerce, in data analytics and archiving. So all these applications, they are either internet applications or business applications which require the use of MongoDB. Now, let's see who are the important clients of MongoDB. MTV, Sourceforge, Foursquare, and SAP AG. All these four companies, they use the MongoDB in their application developments. These are some of the references. Initially, these are the books that have been used for preparing these videos and then the websites. Thank you.