MongoDB evolution continues with launch of mobile, visualisation tools and general availability of Stitch

Profile picture for user ddpreez By Derek du Preez June 26, 2018
Summary:
At the opening of MongoDB World 2018, the NoSQL database provider made a number of announcements that enhance its backend and management capabilities.

mongodb
NoSQL database vendor MongoDB has made a slew of product announcements that not only enhance the backend capabilities of the database itself, but also the improve the management capabilities for developers so that more time can be spent on coding value-add applications.

Particular attention has been paid to mobile capabilities, native visualisation tools, and advancements to its backend-as-a-service integration layer, Stitch.

I got the chance to speak to Mat Keep, director of product marketing at MongoDB, ahead of the event to get a breakdown of the key announcements coming out of the database vendor this week. He said:

The announcements mark a major evolution for us. We are continuing to invest in the database, very heavily, bringing multi-document ACID transactions. We’re continuing to invest in ATLAS, our database-as-a-service. But beyond the database, we’re also moving out across the stack. So, Stitch, which is our service platform, that’s going GA. It’s been in beta for twelve months and we’ve had thousands of customers building and running apps on that.

Atlas, MongoDB’s fully managed database-as-a-service, will now include global clusters, which will allow customers to put data anywhere in the world that they need it, and read and write it from hose locations. This is likely to bolster compliance needs in a post-GDPR world.

The company is also launching MongoDB server 4.0, which introduces multi-document ACID transactions, enabling a broader set of applications to run on MongoDB.

The MongoDB engineering team has built out fine-grained consistency and durability guarantees, introduced a global logical clock and refactored cluster metadata management, which it claims will bring transactions to the company’s more than 4,900 customers and hundreds of thousands of MongoDB users around the world.

Keep said that the inclusion of transactions caters to a small number of use cases for MongoDB customers, but makes the decision to switch from relational databases more palatable. Keep explained:

With the MongoDB document model, because we are bringing so much data together in a single record, having those data integrity guarantees applying to a single document actually meets 80-90% of all applications that you’re building.

For the vast majority of use cases, you don’t need multi-record transactions. However, there are some use cases that do, this makes it easy. It could be a back-end e-commerce system where the user places an order on your site so you want to store that order in the database and at the same time you want to go off and decrement the available inventory, and you want to do that in a normal transaction.

It just makes it easier if you’ve got those truly transactional use cases, to do them in Mongo. About 30% of our business today is migration from relational databases, and we think we can continue to accelerate that, just by having this one feature.

Mobile and Charts

Announced today, MongoDB Mobile extends MongoDB’s ability out to the edge of the network on IoT assets and iOS and Android Mobile devices. This, Mongo claims, will mean developers can build faster and more reactive applications, allowing for real-time, automatic syncing between data held on the device and the backend database. This previously could only be achieved by installing an alternative database within the mobile application, which meant extra management, complicated syncing and limited functionality.

This, coupled with Stitch, Mongo’s recently announced integration layer that allows developers to access services and management from the application front-end, means developers have a more holistic toolset.

Keep said:

We’re bringing all the power of Mongo into mobile devices or IoT gear living at the edge of the network. When you’ve got those mobile devices, coupled with Stitch, and then the back-end database, you really have a complete application stack, which is fully managed for you, so that developers can just focus on writing on the code to differentiate their business.

Rather than all the back-end stuff, where they have to set up all the permissions to go and query from their client back to the database. Stitch can now handle all that. What we’re seeing is that more and more app development code moving from the app server into the mobile device itself - that’s where more and more of the business logic is living.

Developers are looking to create rich, mobile experiences, with mobile first strategies. So bringing all of the developer productivity that we traditionally brought to the back-end to the front-end is something we’re looking to do. It’s the full power of MongoDB in your pocket.

Keep said that Mongo could have introduced a mobile database years ago, but it didn’t have the infrastructure to make it a true success. It focused on building Stitch first, as this allows for a complete tool chain that developers can hook into to build rich end-to-end applications.

MongoDB 4.0 also includes MongoDB Charts, available in beta, which allows users to quickly create, share and interact with visualisations of MongoDB data in real-time. It is the only visualisation tool designed to natively handle MongoDB data structures, eliminating the need to shift data to other systems, such as Tableau.

Stitch

As noted above, and announced a year ago, MongoDB is now making Stitch, which drives Mongo further up the stack, and facilitates application development with secure access to data and services from the application front-end, generally available. Four key features of Stitch are being highlighted this week:

Stitch QueryAnywhere - a service that exposes the full power of working with documents in MongoDB and the MongoDB query language, directly to application developers building mobile or web applications. This is done through a rules engine that lets developers declare security policies at a fine grained level.

Stitch Functions - this allow developers to run simple javascript functions in Stitch’s serverless environment, allowing them to create secure APIs or to build integrations with microservices and server-side logic. Functions also enable integration with popular cloud services such as Slack and Twiliio.

Stitch Triggers - these are real-time notifications that start functions in response to changes in the database, taking action in real time in applications, other services, or in the database itself. These can be used to cause other database operations, push data to other places, or to interact with users, for example by sending text messages or emails.

Stitch Mobile Sync- this will automatically synchronize data between documents held locally in the newly announced MongoDB Mobile and the backend database. Combined with Stitch Mobile Sync, developers can easily make sure data is synchronized and up to date in real time across phones and all other clients.

Commenting on all of the above, Keep said:

We’ve got a lot to continue to build out through Mobile and Stitch. But to the back end as well, MongoDB is the Crown Jewels of the company. This is why we’ve invested in things like document ACID transactions into MongoDB, to make it easier for people to address a complete range of use cases. Our investment will continue to go across those three product lines.

My take

A lot to digest, but it’s clear that this year marks the launch of a more ‘mature’ MongoDB. It has always focused on making the life of a developer easier, and it’s strategy here is well thought through. A lot of the above is aimed at making building applications in a NoSQL environment less manual, across multiple use cases. We will be talking to plenty of customers this week to get the low down on the reality of this - keep your eyes peeled for use cases to come.