The rise of document databases - MongoDB
As technology has evolved, so too has the way we store, access and work with data.
Cloud computing and always-on customer applications have allowed businesses to enjoy greater flexibility and agility in their day-to-day operations, however, data management remains a challenge.
To alleviate frustrations, new solutions, that are flexible and scalable, are being introduced to provide developers with a better way to work and allow them to build state-of-the-art applications for today's modern world.
A business's data is its most valuable asset and therefore it ought to be easy to develop new applications and to glean essential business insights.
Today, one of the most popular and flexible ways of storing data is via a document data model, where each record and its associated data is thought of as a “document”.
Getting to know you – the Document model
The document database model was created for one reason: to make it easy to work with data.
Legacy, relational databases, which have been around for more than 40 years, simply aren't designed for today's modern applications.
Like businesses, applications need to be flexible, and a document database approach offers this by allowing developers to write scalable applications with ease.
The best way to describe a document database is to first distinguish it from legacy, relational models.
Relational databases store information in rows and columns organised in tables and sheets - not unlike Microsoft Excel.
With more data than ever, these models can quickly become complex, hard to maintain and difficult to evolve.
Particularly if it is dynamic data that doesn't naturally fit into a relational model, like geospatial data or videos.
Think about a doctor's surgery, with thousands upon thousands of rows and columns - storing everything from names and prescriptions to your previous address and mobile numbers.
On the other hand, document databases are nimbler and more easily accessible in format. Within the document model, patient data is stored in a single document container, making it easier to have unstructured data like names and addresses all stored in one place rather than spread across different tables.
This model allows developers to be more productive.
No longer do they have to make the database accommodate the needs of their application. The database accommodates them.
Such ease of use coupled with fast development capabilities is why document databases have become the go-to solution for operations that require massive scale and flexibility. Take companies such as Australia's Ticketek, Adobe, and SEGA as examples.
All have adopted document databases to deliver the power and agility they need to run their complex, multi-national operations.
Good for business
Aside from increased speed and flexibility, document databases also offer a range of other benefits to businesses.
The increased capability, visibility and flexibility of document databases make them a vital tool for businesses seeking efficiencies in managing data while adhering to tightening industry regulations and creating cost savings.
Since its introduction, the cloud has lowered the cost of data deployment and storage but savings can only be recouped if a business's associated data can be spread across multiple servers without disruption.
In a traditional database, this is hard to achieve because many complex queries require multiple large tables to be joined together to provide a response.
As all relevant data can be stored in one location within a document database, this process is streamlined removing such limitations.
More specifically, document databases allow businesses to partition data across servers to support deployments spanning vast geographies, in a process known as ‘sharding'.
Pinning data to ‘shards' in specific regions gives an organisation the tools to work within the bounds of the law - meeting regulations such as Europe's General Data Protection Regulation (GDPR), or rules that specify content must be hosted within a particular country for security or legislative reasons.
Document the growth
A document database gives businesses confidence that their most critical resource, data, is working for them, while also ensuring developers are equipped to build applications for today's highly mobile and international consumer.
Looking to the future, the next natural evolution of these database models will be enabling developers to access the power and flexibility of document databases as-a-service in the cloud.
With operational and security practices built-in and the automation of time-consuming tasks such as infrastructure provisioning, database setup and backups, cloud-based services are giving control back to developers.