Do you think your organization spends too much money and time on databases and even more on the resources needed to manage the databases (including relational databases), which have not undergone many changes in the past three decades or so? If so, you are probably still stuck with relational databases that have not changed for ages.
There have been market and technological evolutions that have necessitated reconsideration of relational databases by organizations.
Many companies are trying to leverage newer and more viable options. For instance, MongoDB is a document database that lets businesses be more scalable and agile. It is a practicable option to replace relational databases. Startups and Fortune 500 companies alike are using MongoDB to reduce costs, create new kinds of apps, reduce time to market and improve customer experience.
For applications where the relational model is suitable and for legacy systems, relational databases will go on playing a significant role. However, most new applications can be built using databases designed for how applications are developed at present.
What is MongoDB?
MongoDB empowers businesses to be more scalable and agile and is the leader among NoSQL databases. As mentioned before, its use has helped startups as well as Fortune 500 companies. For example, according to the MongoDB website:
- Telefonica has improved storage costs by 67%, time to market by four times and performance by 100 times.
- MetLife has developed a 360 degree view of more than 100 million customers in a quarter.
- Salesforce Marketing Cloud fast-tracked its roadmap by a year.
- A tier 1 investment bank saved 40 million dollars in five years and improved its performance by 200 times.
- ADP provides mobile experience to a million users in 17 countries with no downtime.
- Mailbox recreated the mobile inbox and expanded to more than 1 million in about 6 weeks.
MongoDB has been designed keeping in mind how applications are developed and run nowadays:
- Architecture: Companies benefit from virtualization, commodity hardware and cloud computing, as the infrastructure for storage of data continues to change.
- Apps: Mobile and social apps, software as a service and big data are the norm and apps interfacing with, generating and serving data have changed.
- Development methods: The methods used to develop applications have undergone many changes. Iterative development has come into vogue to fulfill the requirement to constantly adapt to the needs of a market that is becoming increasingly competitive.
- Data shapes: Structured and semi-structured data, in addition to object-style and polymorphic data that continues to evolve is required for apps developed today. MongoDB can handle these data shapes without any problems.
- Data Volumes: Now, organizations have to support several terabytes of data, thousands of queries every second and millions of users. This is in contrast with the data volumes that used to be predictable, constrained and smaller.
MongoDB is used for a broad range of apps in all industries and by companies of all sizes. It is an open-source, agile database, that lets schemas to change rapidly along with the evolution of apps. However, it still offers the functionalities that traditional databases provide, such as strict consistency, a full query language and secondary indexes.
From deployment for a single server to complex and large multi-site architectures, you can scale up or down with MongoDB, which is built for high availability, performance and scalability. MongoDB leverages in-memory computing to offer high performance for reads as well as writes. MongoDB’s automated failover and native replication enable operational flexibility and reliability of enterprise grade.
You can address the needs of a high-growth, modern enterprise while using MongoDB Enterprise and be as scalable and agile as a startup. You can benefit from on-demand training, OS certifications, enterprise-grade security, management tools, disaster recovery, and zero-downtime upgrades while using MongoDB Enterprise. The company partners with you from development to production and provides proactive and consultative support.
Use Cases for Mongo DB
MongoDB is helping achieve goals that were previously unattainable in industries like enterprise solutions, web, cloud and mobile. MongoDB is appropriate for most use cases and applications and is a general purpose database.
- Big Data
When data is too massive, fast-changing or diverse to be handled efficiently with conventional infrastructure, skills and technologies, Big Data comes into the picture. For instance, effective processing, management and storage of Big Data are required for ad technology, genomics, log data collection, customer sentiment analysis and clickstream analysis.
For more information, please refer to: https://www.mongodb.com/use-cases/big-data
- Social and Collaboration Apps
Shared user activities like visiting restaurants or working out and other interaction among users in the form of likes, comments and online discussion are facilitated by social and collaboration apps. Among social and collaboration apps are online dating services, internal and public social networks, tools for collaboration on documents and projects and consumer cloud services.
For more information, please refer to: https://www.mongodb.com/use-cases/social-collaboration-apps
- Content Delivery and Management
A varied set of apps that serve and store content, including metadata, are collectively known as content management. These apps include archives, e-commerce websites, document management, web content management systems and online publications, among others.
For more information, please refer to https://www.mongodb.com/use-cases/content-management-and-delivery
- Fraud and Security Apps
These include apps for compliance, detection of fraud, anti-terrorism and cyber threat analysis, which identify and prevent attacks on live and digital assets from unauthorized and malicious individuals.
For more information, please refer to https://www.mongodb.com/use-cases/security-fraud-apps
- Management of Customer Data
Applications that store metadata and data especially about users, members or customers are together known as customer data management. Apps for enterprise resource planning (ERP), subscriber data management, identity and access management, customer relationship management (CRM), biometrics and gaming user profiles contain customer data.
For more information, please refer to https://www.mongodb.com/use-cases/customer-data-management
- Asset and Product Catalogs
These store lists of inventory, products, equipment, property and other assets, besides metadata. Apps for commercial fleet management, retail inventory management and ecommerce are among the examples of such apps.
- Single View
Apps for single view create a single view of anything, including aspects of business such as risk, customers, supply chains, systems or inventory, by aggregating data from several sources into a central repository.
For more information, please refer to https://www.mongodb.com/use-cases/single-view
- Mobile Apps
MongoDB provides the backend for apps deployed on tablets or smartphones.
For more information, please refer to https://www.mongodb.com/use-cases/mobile-apps
- Internet of Things
The Internet of Things has evolved from machine-to-machine and uses rich, real time analytics to blend data from multiple enterprise systems and devices and create new levels of opportunity, efficiency and operational insight.
For more information, please refer to https://www.mongodb.com/use-cases/internet-of-things
- Database as a Service (DBaaS)
This provides on-demand access to writes, reads and storage, i.e., database capacity to developers.
For more information, please refer to https://www.mongodb.com/use-cases/database-as-a-service
Case Studies of Real World Businesses That Benefited From Mongo DB
As mentioned before, an organization of any size in any industry can benefit from MongoDB. Cloud, mobile web and others among internal and other enterprise solutions are among such industries.
The data management techniques and tools that enterprises use have undergone vast changes in the past three decades. This has been on account of several forces that have been instrumental in changing the assumptions that underlie such techniques and tools.
Several organizations are adapting to these changes and are reducing costs, speeding up time to market, improving customer experiences and creating new kinds of apps. These include the following:
It is among the largest insurance companies in the world. However, the data it has to support its business is mostly siloed, due to which customer service representatives have a hard time while trying to resolve customer issues. This not only makes it difficult to cross-sell and upsell products, but also makes the customers’ experience far more complex than necessary. So, MetLife is all set to make a substantial investment in technology to make it leaner, better and faster. At the center of this effort is MongoDB.
In 2011, MetLife began a project to collect all its data in a central repository. This was aimed at creating new upsell and cross-sell opportunities, improving call center efficiency and streamlining customer experience.
After nearly 2 years and substantial investment, MetLife switched to MongoDB from a relational database that it had started the project with. The MongoDB team was able to ship a prototype within a couple of weeks and within 90 days the app was in production. The application, called The Wall, collects data from more than 70 source hubs, 100 products and more than 100 million customers to combine it into one data hub. Customer service representatives access the data through an interface that is intuitive and quite similar to Facebook. MetLife has been able to recreate the customer experience and to liberate its data.
- Wide Use: MetLife has a number of apps in store to develop on the basis of its centralized data hub and with MongoDB as the foundation. The breadth of regions and customers in The Wall is under continuous expansion, as is the number of customer service representatives who can access it. MetLife has built The Research Wall, which is used by business analysts to collect customer data to drive strategy.MetLife is also developing a predictive churn engine to predict when customers could leave MetLife and prod customer service to contact such customers. MetLife has also developed a recruiting app based on MongoDB.
- Developer Appeal: MetLife is trying to attract and retain the best developers in line with its technology investments. It provides its developers with different cutting edge, open-source technologies like MongoDB and has moved its development hub to North Carolina, where the so-called Research Triangle is located.
- SWAT Team: MetLife has a group of highly skilled business, operations and engineering professionals comprising a ‘SWAT Team’. They help sort out problems in different project scenarios to overcome obstacles and to make extra resources available as required. Such a team assisted The Wall’s team find answers to a few key questions.
- Sponsorship by Executives: MetLife is committed towards its investment in technology. So the goals and executives are aligned appropriately and this facilitates collaboration across many groups to lead projects to completion.
Telefonica has more than 315 million customers in over 20 countries in Latin America, Europe and the US. However, Telefonica is under pressure to look for new revenue streams as landline telecom markets continue to shrink and mobile markets move towards maturity. Still, it remains among the five leading telecom companies in the world.
Based on the existing data about customers, Telefonica wanted to develop new services and apps, such as location-based advertising. However, the data was in several different systems and in distinct formats. All lines of business or products had their own schemas and data stores. Telefonica had to gather the data into one repository. Initially, it used a relational database for the purpose.
However, after a few iterations, the project team switched to MongoDB. That was because the relational database was not performing at scale and it was difficult to standardize data in the various schemas.
Using MongoDB, the project team developed a strong platform within four months and improved performance by 100 times, besides reducing cost of storage by 67%.
- Wide Use: Telefonica has moved several projects of strategic importance to MongoDB. For example, it has developed a machine-to-machine platform that can analyze, manage and store a large number of sensor readings for each customer.To increase competition and openness in the mobile market, Telefonica and Mozilla are working together on the Firefox OS, which is based on MongoDB. The system of push notifications that underlies the project is among those which will potentially run on MongoDB.
- Rapid Iterations: Before they began to use MongoDB, the team members had been used to longer software development cycles of about four to five months. With MongoDB, however, they have been able to iterate rapidly and frequently, which helped reduce the time to market and also let them incorporate additional features that were not feasible before they began to use MongoDB.
- MongoDB Support: Telefonica closely coordinated with MongoDB during the development stage, which helped the project to progress smoothly.
- MongoDB Ecosystem: To ramp up on technology, the Telefonica team took advantage of available resources, like free online education, Google Groups and online documentation. They also utilized the MongoDB management service to deploy resources optimally. This helped complete the project in a short timeframe.
3. Code Academy
Code Academy teaches coding to beginners as well as to those who have more knowledge and experience. It teaches code writing not only through tutorials but also through interactive and hands-on tasks. Code Academy follows a ‘learn by doing’ approach. It teaches students to build websites and apps.
The Code Academy co-founders were prototyping different versions of the website. They were looking for different ways of creating an interactive platform. They were quickly changing model and schema definitions and needed a data store that would be flexible and not slow them down, as against relational databases, while they made changes. MongoDB not only proved to be the easiest way to try different models, but also significantly sped up development of the website. It provided easy joints between collections and provided a balanced development environment.
There was no intermediate caching layer and each active data set was stored in memory in MongoDB. The developers initially had MongoDB-backed sessions.
MongoDB dealt well with the huge quantities of submissions by aspiring coders. The response cycle was quick and there was almost no downtime. The developers found that they can attach webservers directly to the database, which they could not do with relational databases, as MongoDB is quick enough.
MongoDB is the leading NoSQL database in the world that can not only store larger amounts of data but also crunch it much faster than any relational database