Key takeaways from MongoDB World, New York: an increasing focus on mobile and the edge
NoSQL database firm MongoDB gathered its users and prospects to a summit in New York last month to update them on its progress: here’s what we learned.
But first, an introduction. MongoDB is an open source database company that was founded in 2007 by Dwight Merriman, Eliot Horowitz and Kevin Ryan – the team behind DoubleClick. At the Internet advertising company DoubleClick (now owned by Google), the team developed and used custom data stores to work around the shortcomings of existing relational databases.
More traditional relational databases such as those from Oracle, Microsoft and IBM store data in rows and columns and can be queried with the popular Structured Query Language, SQL (for that reason relational databases are also considered SQL databases). But to achieve the scalability and flexibility it was looking for, MongoDB opted to use a NoSQL architecture.
NoSQL originally stood for ‘no SQL’ but some vendors in the space do now support SQL, so sometimes the acronym is described as ‘not only SQL’. MongoDB however must be queried using the company’s own language – MongoDB Query Language. It says though that developers can familiarize themselves with it in a matter of weeks; MongoDB offers training and online courses. MongoDB has more than 14,200 customers in over 100 countries. The MongoDB database platform has been downloaded over 70 million times and there have been more than a million MongoDB University registrations.
MongoDB raised $192m in an IPO on Nasdaq in 2017. In its latest quarterly results, announced in June this year, the company reported revenue of $89.4m, up 78% year on year. The company is still investing for growth and hence loss-making – it reported a net loss of $33m.
So what’s new? We caught up with execs to hear the latest announcements from MongoDB World.
Mobile, Web, and serverless application development
Probably the biggest news was around the company’s April acquisition of Realm, the firm behind the Realm mobile database and Synchronization Platform which it bought for $39m in cash. There are more than 100,000 active developers using Realm, and the solution has been downloaded more than 2 billion times. Realm is a lightweight object database suitable for mobile application development. It’s an alternative to the likes of SQLite and Core Data, and like MongoDB is freely available.
The acquisition closed in May, and it has started to set out its roadmap. MongoDB plans to combine the Realm technology with what was MongoDB’s serverless platform, MongoDB Stitch. In due course Stitch will be renamed MongoDB Realm, combining the serverless back-end with the existing Realm mobile application database. MongoDB’s vision is to enable developers to use Realm to build use-cases across offline-first requirements, digital transformation, user experience and IoT.
MongoDB 4.2: release candidate
Next up was the launch of the release candidate of the core database, MongoDB 4.2. We’re told 4.2 is likely to reach general availability in the next few weeks. As we reported last year, this is an important update for a number of reasons.
4.2 ushers in the ability to encrypt individual document fields, each secured with its own key transparently on the client. This helps companies meet the demands of regulatory compliance and simplify the move to fully managed cloud services. Meanwhile on-demand materialized views are said to accelerate the performance of common analytics queries by incrementing and enriching results sets as new data is processed by the aggregation pipeline.
Wildcard indexes enable developers to define a filter to automatically index all matching fields, sub-documents, and arrays within sets of documents, saving time.
A feature that was added to the launch of version 4.0 last year was the ability to do ACID transactions across multiple documents. ACID stands for atomicity, consistency, isolation and durability, and ACID is an important feature of transactional databases. Relational databases have it, but few NoSQL databases do.
With the launch of ACID transaction support with 4.0, transactions were ACID across multiple documents as long as they ran across a single shard. Now with 4.2, they are able to maintain ACID while running across multiple shards in a cluster. If you are wondering if this is really such a big deal, consider that the company says it spent approximately $40m over the last four years building the capability. While not every application running on MongoDB needs ACID compliance, the company felt that there are enough developers that consider it a must-have, even if they don’t need it just yet.
MongoDB Atlas is a fully automated and managed cloud-based version of the software that MongoDB runs for its customers. In its first quarter announced in June, the company reported that Atlas now accounts for 35% of its total revenue, which is up 340% year-over-year. At MongoDB World the company announced two enhancements: Auto Scale and Full-Text Search.
When enabled, Atlas will be able to track key resource utilization metrics in real time, and scale up or down using predictive modeling. MongoDB Atlas Full-Text Search, which is currently in beta, is said to provide rich text search functionality against fully managed MongoDB databases, with no additional infrastructure or systems to set up or manage.
Mindful that many companies want to get in on the ‘data lake’ concept using technologies such as Hadoop, a new MongoDB Atlas Data Lake – also in beta – enables users to quickly query data in any format on Amazon S3, using the MongoDB Query Language (MQL). They can query data in place on S3 - they don't have to move it anywhere, and they don't need to predefine the schema. This significantly boosts ease of use, productivity and time to insight, according to the firm.
Also on the analytics side there was news of MongoDB Charts, which enables the creation of visualizations and reports directly from MongoDB data without extracting it to third-party tools. Now GA, it is possible to build standalone dashboards or embed them straight into web applications.
MongoDB is mindful that companies use a wide variety of technologies in their data pipelines, so it needs to be open to integrating with other sources and destinations for data movement. One such integration is a new MongoDB Connector for Apache Kafka – the open source stream-processing software platform developed by LinkedIn and donated to the Apache Software Foundation. The new connector means developers can build data pipelines that move events between systems in real time, using MongoDB as both a source and sink for Kafka. The technology is verified by Confluent (the company commercializing Kafka).
There is also a MongoDB Enterprise Kubernetes Operator. Kubernetes is an open-source container-orchestration system for automating application deployment, scaling, and management. It was originally designed by Google, and is now maintained by the Cloud Native Computing Foundation. MongoDB’s Kubernetes Operator means developers can deploy and manage the lifecycle of containerized application and MongoDB clusters all within the Kubernetes environment, and get a consistent experience wherever they run them: on-premises, hybrid, or public cloud.
Ultimately the goal is for MongoDB to enable developers to build applications wherever it most makes sense: on-premises, in the cloud, or a hybrid. It is building more and more hooks into other open source technologies, such as Kafka and Kubernetes, while continuing to build out the core functionality of its own MongoDB database.
For us though the biggest takeaway was MongoDB’s intention to try and offer a database platform that stretches from the datacenter, to the cloud, to the edge, thanks in no small part to its acquisition of Realm, and the work it will do combining Realm and MongoDB Stitch. We’ll watch progress with interest.
You may also be interested in MongoDB says its NoSQL database is a developer's dream