What is our primary use case?
For this particular scenario, I had real-time applications. I was taking care of one product, which was an e-commerce product. MongoDB is generally used for real-time applications. I used it for chat, notifications, live dashboards, accessing the product catalog, customer profiles, carts, and orders. These are the key things I used because it was a real-time e-commerce platform. That's why I went for MongoDB, as it's a strength for real-time applications and e-commerce. It also helps in gaming, but I was not taking care of a gaming product altogether. It was e-commerce.
In my case, it was very exclusively utilized for the e-commerce platform. Integration capability is pretty much strong. It integrates properly and easily with the REST APIs and different native applications such as Java and .NET. Even with the real-time event queue, I was using Kafka. For the real-time event streaming, in my case, it was completely real-time. There is no problem in connectivity.
What is most valuable?
I am familiar with MongoDB Atlas for Government (FedRAMP Moderate) [Private Offer Only]. MongoDB is a NoSQL document-oriented database, which is useful for people who do not want to write a query. That's a plus point of MongoDB. The biggest advantage I noticed in MongoDB is high availability. The single differentiator is that it's very developer-friendly because you have JSON-like BSON documents. Even someone who is non-technical can use MongoDB and make it work. Further, the technical features obviously include automatic backup. There is one more advantage not in others; because it is embedded in the same document, there is no need for complex joins. I also had a Spark integration. With big data processing analytics integrated in the form of Spark talking to MongoDB, it becomes quite versatile.
What needs improvement?
MongoDB needs to be a little easier because sometimes understanding the query optimization, the indexing strategy, replication, and sharding can be complicated. This is particularly tricky for those who have not used MongoDB much. The lack of experience with MongoDB among architects makes discussions related to database internals and performance tuning heavier.
MongoDB needs to be a little careful about data modeling, index management, and shard key design. While these features are there, because of the document language used instead of a relational database approach, relationships between data are difficult to establish. These techniques become more complicated, requiring an advanced user of MongoDB. While it helps when there's no relational database, it is a limitation.
MongoDB is a NoSQL database, while relational databases are more universally accepted and implemented. MongoDB should expand its horizons, making a version with some SQL language or introducing an approach integrating AI and querying capabilities.
For how long have I used the solution?
I have used it, not to a very great extent. For a couple of projects, I was using MongoDB. In 2018, I had used it for two years, from 2018 to 2021, basically three years. In 2023 also I used it.
What do I think about the scalability of the solution?
The only place where I will cut its mark is that it has to expand its horizon. It should not be limited to use only for e-commerce or gaming platforms. It should be used even in the banking industry and even in the manufacturing industry. If it becomes that way, then I would say MongoDB is completely versatile and universal in its strategy. Right now, it is limited in its strategy and in its applicability.
How are customer service and support?
Twice I have contacted them, and I had a very good experience talking to them. They were very professional and very detailed in their answers and responses. They helped me whenever I needed help. The support was very good and world-class.
How was the initial setup?
It was not complex; it was very simple. It is very light and lightweight. There was no problem at all.
What was our ROI?
The value to money for the specific e-commerce platform is a perfect score. It's fully worthy of it. MongoDB has its own niche market where it can be used, and in such niche markets, it is rated exceptionally. In such niche markets, it has limited use cases.
What other advice do I have?
MongoDB is not costly, but it needs to do something different so that people know MongoDB. While people know the name, they haven't used it much. Everybody knows SQL Server, AWS database, and Azure database, but very few have used MongoDB. This affects discussions about database internals and performance tuning.
The outcome of MongoDB can become heavy for the user. Each has its pros and cons, and other databases are a little better and more universally accepted. MongoDB needs to expand its horizon, potentially integrating AI features for querying. An AI-integrated query language would be beneficial, where all the queries that you need would be available within MongoDB with an AI feature integrated inside it. I would rate this review an eight out of ten.
Which deployment model are you using for this solution?
On-premises
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Google