MongoDB Performance Report from Live Applications
See firsthand some of the best implementations of MongoDB to better take advantage of this NoSQL database.
Join the DZone community and get the full member experience.Join For Free
Today most of the accepted concept, theories, and technologies have gained popularity but still NoSQL does not have a brilliant history. Only few knowledgeable and dedicated technologists knew the term NoSQL database. But gradually the success of NoSQL completely changed the scenario in arena of mobile app development and web application projects.
Many application development companies are extensively using NoSQL database in mobile and web applications and found that MongoDB is gaining popularity with coming years. Implementing MongoDb in one of their application definitely requires a team of app developers who hold proficiency in developing MongoDB based applications and therefore professionals must hold good experience in terms of service offerings and implementation methodologies. Let’s see some of our experience in this technology:
Some of the projects where I found that MongoDB was implemented at its best are discussed herewith. With all technical nuances these companies are holding several years of experience in technology and fostering services in MongoDB web application development and using MongoDB for mobile application development.
A - Navigation Utility Application
Navigation Utility Application is one of the brilliant MongoDB application. This is an interested travel application which stores recording of journey made. The recordings can be video clips or the routes covered. Application has navigation features therefore, it is connected with Google Maps and a GPRS. These features help users in getting the turn-by-turn navigation service. Application also allow users to saves these video clips using cloud services and can view them later. Also, the saved videos can be shared on social media platform.
Why only MongoDB?
MongoDB holds the capability of managing geometric storage and information. MongoDB holds geometric storage and search features. This geospatial feature of MongoDB made the things easy. Based on the requirements, the application demanded for sharing the videos on social media platform where storing videos in YouTube seems out to be a better plan. It was just easily done as the YouTube API plays with data in JSON format which can be easily stored on MongoDB. Definitely, MongoDB in this case turns out to be a better option.
Applying MongoDB In App:
The geospatial features of MongoDB is always a great value addition for location based mobile apps. While developers are looking to incorporate navigational features in our application, they tend to look for MongoDB. The app saves each video and was also saving location based metadata. This information is where exactly the video was taken, the exact direction and much more related to direction. But this video was being uploaded only for metadata and other user specific information. The database also saved some of the basic information of user in document format.
B - Location Based Job Search App
Among the popular MongoDB Applications there are applications which are location based job search apps. This application help users in finding new jobs by matching user’s profile. Application offered with a scalable business solution where users can find a location based job. The app helped users to find new jobs by matching user profile and based on it the application filters the desired jobs nearby user’s location. The app fetches job openings data from a partner web service. Application also allows companies to post jobs in app environment.
Why featuring MongoDB?
If you are not looking for the most common idea of fixed format user profiles like that of Facebook and other social profiles, then you can always try implementing features of MongoDB. Hence, you can make a wise decision of choosing MongoDB and its document database to store schema-less profile information. As you know the beneficial features of MongoDB hence it is advisable to choose MongoDB for its commendable performance in query searches. You can therefore settle down for using MongoDB as its great in terms of performance and scalability.
Here again the application may demand you not to ignore the location feature. Using database’s location feature is very much imperative. Try using stored user profiles as documents. This application gained lot of popularity hence, clustering several servers in order to improve the performance is a great option. Here you may again find MongoDB an easy resort for load balancing. You can use GraphDB to store friends and other social network relations.
C- Selfie Rating App
Photo sharing application is again a great example of MongoDB application. This is an amazing photo sharing application which also holds within social networking feature within it. Application was more or like a platform where users can share their photos and more specifically their selfies. The application is also known for its amazing feature which is that it broadcasts the photo of all app users including the one who takes the his/her selfie and all those following the tags inserted in the photo. The application allows users to like or dislike the photo and displays the featured selfie based on the ratings.
How to used it?
Each selfie was saving some profile information, location where image was taken, date, time, user, tags and associated metadata etc. You may face the challenge of calculating the most popular selfie in real time. You can manage to to save the rating data in each photo’s document but for finding the most popular photo you would require to navigate all the images and fetch rating data. Running such queries in a SQL database seems easier and faster way out. Hence, try overcoming with a problem by running a cached array to store the most popular photo in real time. This could be an easier and faster way to execute than SQL options.
As conclusion I can say that everything depends on use cases. It is not that we only implement MongoDB in every application, but understanding the actual requirement and real implementation of tools and technologies yields best results. There are many cases when MongoDB alone is not enough, instead mixing its capabilities with others brings out best. Expert professional technology consultants must be hired so that you get customized business solution which is definitely a scalable and robust application.
Opinions expressed by DZone contributors are their own.