MongoDB is a database management system that works with a document—oriented data model. Unlike relational databases, MongoDB does not require tables, schemas, or a separate query language. The information is stored in the form of documents or collections.
The developers position the product as an intermediate link between classic DBMS and NoSQL. MongoDB does not use schemas like relational databases do, which improves the performance of the entire system.
Features
MongoDB has a number of properties that set it apart from other products:
- Cross-platform. The DBMS is designed in the C++ programming language, so it can be easily integrated under any operating system (Windows, Linux, macOS, etc.).
- The data format. MongoDB uses its own information storage format — Binary JavaScript Object Notation (BSON), which is based on the JavaScript language.
- Document. If relational databases use strings, then MongoDB documents that store values and keys.
- MongoDB uses collections instead of tables. They contain different types of datasets
- Replication. The information storage system in the DBMS is represented by nodes. There is one main one and many secondary ones. Data is replicated between points. If one primary node fails, then the secondary node becomes the main node.
- Indexing. The technology is applied to any field in the document at the discretion of the user. Indexed information is processed faster.
- To save large data, MongoDB uses its own GridFS technology, consisting of two collections. The first one (files) contains the file names and metadata on them. The second (chunks) stores segments of information whose size does not exceed 256 KB.
- The DBMS searches for special queries. For example, a user can create a range query and receive an instant response.
- A load balancer is used in a DBMS not only to distribute the load between different databases, but also for horizontal scaling. The database segments are distributed across different nodes, which improves performance. At the same time, databases located on different nodes are synchronized with each other and ensure the integrity of information for the client.
- MongoDB can be delivered to the end customer as a cloud solution.
DBMS is used to store events in the system (logging), record information from monitoring sensors in the enterprise, as well as in the field of e-commerce and mobile applications. MongoDB is often used as a repository in the field of machine learning and artificial intelligence.
MongoDB belongs to the NoSQL DBMS class and works with documents, not records. It is a cross-platform product that can be easily implemented into any operating system. A number of unique features allow you to use a DBMS for specific tasks in which it provides maximum performance and reliability.