MongoDB FAQ: What the NoSQL database can do
One of the most popular NoSQL-Databases is currently MongoDB. The questions about MongoDB are as diverse as the database is popular. We have therefore created an FAQ with all the information worth knowing about the database. To answer the questions, we were able to recruit a proven expert in Eliot Horowitz, because he is one of the founders of MongoDB and was formerly the company’s CTO.
Horowitz began writing the base code for MongoDB in 2007 and then built the development and product teams.
Horowitz: MongoDB is a modern and versatile database platform that I founded in 2007 with Dwight Merriman and Kevin Ryan. At that time I felt at all software development projects, which I was involved in, noticed that relational databases have their limitations in the development of modern applications. Ultimately, this gave the impetus to develop a database that developers like to use and that makes their work easier. According to recent study by Stack Overflow MongoDB is considered the most popular database among developers and also the database tracking site”DB-Engines” ranks MongoDB as the 5th most popular database in the world. For document-oriented databases, DB Engines ranks MongoDB as number one.
We now have more than 17,000 customers in over 100 countries and our data platform has been downloaded over 90 million times. We are also represented on the cloud market with the global cloud database MongoDB Atlas. Since the 2016 release, over 15,000 customers worldwide have been using MongoDB Atlas. Atlas is available through AWS, Azure, and Google Cloud Platform.
MongoDB derives from the English word “humongous”, which means “gigantic”. We quickly realized that one of the biggest problems for large digital companies is the scalability of their databases. MongoDB was therefore designed as a particularly scalable database and this “giant database” then became MongoDB.
Horowitz: MongoDB was specifically designed to offer more flexibility and scalability for data storage and consumption. The JSON-Document model enables developers to work with data more intuitively and thus more productively. Businesses today still rely on relational databases like Oracle. These technologies are now obsolete; they use rows, columns and tables to store data. This makes them quickly rigid, slow, and nearly impossible to manage. Imagine Microsoft Excel, but on steroids.
These models no longer meet the modern requirements of our digitized world. They were designed over 40 years ago, before the cloud, before cellular and even before the internet. These relational databases are still based on the state of the art at the time. MongoDB is a modern database designed to meet the needs of today’s and tomorrow’s applications. Also, MongoDB allows its users additional features like Atlas Search and Atlas Data Lake – features that go beyond the normal data management of a core database.
MongoDB’s document model uses a fundamentally different paradigm than traditional ones relational databases, as for the scheme. So in MongoDB the documents are intuitive. This means that there is no need for a central catalog in which schemas are declared and maintained. And so the schema can vary from document to document and evolve rapidly without changing existing data. When you get to a point where you want to ensure that the data conforms to a certain schema, a schema can be introduced, but the document model remains flexible overall.
MongoDB’s dynamic schema makes it easy to view semi-structured and polymorphic data because the documents don’t all have to have exactly the same fields. For example, a collection on “Financial Trading” may contain various positions that are, say, stock positions, some bonds, or cash positions. They all may have some fields in common, but certain fields (e.g. “ticker”, “number of shares”) do not apply to all types of positions.
MongoDB also automatically manages replica sets, which are multiple copies of data spread across servers, racks, and data centers. Replica sets help avoid database downtime through native replication and automatic failover.
Horowitz: Due to the flexible scheme, the platform is particularly well suited for complex applications with a large amount of unstructured data. The fact that the documents are flexible enough to cover the functionality of many data models makes them a general purpose database suitable for most use cases. Clients include the world’s largest banks, telcos, healthcare providers and media brands, as well as some of the fastest growing cloud native startups.
Customers from Germany include, among others Amadeus, the leading provider of IT solutions for the travel industry, and the car manufacturer Daimler with its application Telediagnosis or the Bosch group, which uses MongoDB for its IoT applications and data.
Horowitz: The Sharding with MongoDB allows developers to scale their database across multiple replica sets to handle write-intensive workloads and growing data volumes. This allows users to seamlessly scale their database as their applications grow beyond the hardware limitations of a single server. The advantage is that the application complexity does not have to be increased and there are no downtimes.
In order to be able to react to changing requirements caused by the workload, documents can be Shards and nodes can be added or removed from the cluster in real time. MongoDB automatically rebalances data when needed, without manual intervention.
The goal is to give all users the freedom to access our service from anywhere. An advantage of MongoDB is therefore that MongoDB can really be used anywhere: on a laptop or mainframe, on-premises or in the cloud, with all cloud providers – from AWS to Azure to the Google Cloud Platform. With the increasing adoption of cloud computing, we see an increasing demand for MongoDB Atlas. Our experts manage MongoDB Atlas on any public cloud, ensuring performance optimization and security configuration. This allows programmers to simply concentrate on developing their applications – on their core business.
Horowitz: the SSPL clarifies the terms of making MongoDB publicly available as a third-party commercial service to ensure we can continue to invest in building MongoDB for our users. Under the SSPL, users are free to review, modify, and distribute the software or redistribute changes to the software in accordance with our SSPL license.
Horowitz: No, absolutely not. Anyone can become a MongoDB expert. Our MongoDB University offers free online courses – whether for beginners or advanced developers. In addition to online courses, regular community events are held at MongoDB University to exchange ideas and learn more about the database.