Introducing MongoDB Realm’s Flexible Sync – Now Available in Preview
Twelve months ago, we made MongoDB’s edge-to-cloud data synchronization service, Realm Sync , generally available. Since then, Sync has helped hundreds of our customers build reliable, offline-first mobile apps that serve data to millions of end users – from leading telematics providers to chart-topping consumer apps . Historically, Realm Sync has worked well for apps where data is compartmentalized and permissions rarely change, but dynamic use cases with evolving permissions required workarounds. We knew we could do more, so today we are excited to announce the next iteration of Realm Sync – Flexible Sync. With the introduction of Flexible Sync, we are redefining the sync experience by enabling even the most complex use cases out-of-the-box without requiring any custom code. Intuitive query-based sync Distinctly different from how Realm Sync operates today, Flexible Sync lets you use language-native queries to define the data synced to user applications. This more closely mirrors how you are used to building applications today – using GET requests with query parameters – making it easy to learn and fast to build to MVP. Flexible Sync also supports dynamic, overlapping queries based on user inputs. Picture a retail app that allows users to search available inventory. As users define inputs – show all jeans that are size 8 and less than $40 – the query parameters can be combined with logical ANDs and ORs to produce increasingly complex queries, and narrow down the search result even further. In the same application, employees can quickly limit inventory results to only their store’s stock, pulling from the same set of documents as the customer, without worrying about overlap. Document-level permissions Whether it’s a company’s internal application or an app on the App Store, permissions are required in almost every application. That’s why we are excited by how seamless Flexible Sync makes applying a document-level permission model when syncing data – meaning synced documents can be limited based on a user’s role. Consider how an emergency room team would use their hospital’s application. A resident should only be able to access her patients’ charts while her fellow needs to be able to see the entire care team’s charts. In Flexible Sync, a user’s role will be combined with the client-side query to determine the appropriate result set. For example, when the resident above filters to view all patient charts the permission system will automatically limit the results to only her patients. Real-time collaboration optimizations Flexible Sync also enhances query performance and optimizes for real-time collaboration by treating a single object or document as the smallest entity for synchronization. This means synced data is shared between client devices more efficiently and conflict resolution incorporates changes faster and with less data transfer than before. Getting started Flexible Sync is available now. Simply sign up or log in to your cloud account, deploy a Realm app, select your sync type, and dive right in. Flexible Sync is compatible with MongoDB 5.0, which is available with dedicated Atlas database clusters (M10 and higher). Shared-tier cluster support for 5.0 and Flexible Sync will be made available mid-February. Have questions? Check out our documentation or the more detailed announcement post on the Developer Hub. Looking ahead Our goal with Flexible Sync is to deliver a sync service that can fit any use case or schema design pattern imaginable without custom code or workarounds. And while we are excited that Flexible Sync is now in preview, we’re nowhere near done. The Realm Sync team is planning to bring you more query operators, permissions integrations, and enhancements over the course of 2022. We look to you, our users, to help us drive the roadmap. Submit your ideas and feature requests to our feedback portal and ask questions in our Community forums . Happy building!
MongoDB Realm Sync is GA
Every mobile developer wants to build an app that users will love - meaning you want to build apps that work for users regardless of signal strength, that react to changes in data in real time, and that won’t drain your user’s battery life or use excessive amounts of data. In June, we released MongoDB Realm , a set of integrated application development services that makes it possible for anyone to build a great app - whether you’re a solo developer working to stand up your idea, or part of a larger team shipping your latest release. As part of this, we announced a public beta for MongoDB Realm Sync , which makes it easier for you to keep data in sync across users, devices, and your back end, even when devices aren’t always online. We’re excited to share that as of today, Realm Sync is now Generally Available (GA). We believe Realm Sync offers a best-in-class solution for offline-first app developers, who need to move data between a local client and the cloud. With the Realm Sync service, we’ve significantly reduced the code you need to write, while also reducing the complexity of your app architecture. Crucially, we’ve done it while making sure everything is built to optimize for battery power, CPU, and bandwidth. As a developer, you no longer need to write (or maintain) thousands of lines of complex conflict resolution and networking code. Realm Sync handles that for you, making it simple to move data between the local Realm Mobile Database and MongoDB Atlas on the back end. You can build features faster, reduce bugs, deliver a better user experience – and do it all without having to worry about standing up or scaling servers. Download the MongoDB Realm Whitepaper Building for an Offline-First Environment To many development teams, synchronizing data between the client and your back end sounds simple. But when connectivity isn’t guaranteed, it becomes time-consuming and complex to achieve. MongoDB Realm simplifies data sync. Synchronization works bi-directionally, moving data between the Realm Mobile Database on the client-side and MongoDB Atlas on the back end. Automatic conflict resolution resolves any data conflicts that may emerge across multiple devices, users, and your back end, and ensures data is consistent whenever mobile devices come online. Because data is synced to Atlas, applications can easily scale up or down infrastructure as app usage changes. MongoDB Realm Sync also: Speeds feature innovation. Realm’s Mobile Database - used to store data locally on device, and MongoDB Realm Sync - both reduce the code developers need to write, and free up time to focus on building new features that provide unique business value. Works across platforms. Realm Mobile Database and MongoDB Realm Sync work on any platform, for any mobile device. Is secure and stable. MongoDB Realm lets you encrypt data in-flight or at-rest, both in the cloud and on-device. MongoDB Realm Sync in Action Fortune 500 businesses and cutting-edge start-ups are already using the Realm Mobile Database and MongoDB Realm Sync to build their apps today. Srikanth Gandra, Director of Digital Technology for 7-Eleven, built a mobile app on MongoDB Realm that’s been successfully rolled out for use across the United States and Canada. “What we’ve created is really innovative. Since rolling this out to all 8,500 stores in North America, we’ve been able to sync data across more than 20,000 devices on a nearly real-time basis," he said. "[Managers] can start using devices immediately, rather than waiting 2-3 minutes to download the data on initial startup, like they used to. Data accuracy - especially around inventory when sales happen or shipments arrive - has really improved.” “We’re evaluating using Realm and Realm Sync to assist with inbound and outbound parcel shipping use cases,” said James Fairweather, Chief Innovation Officer, Pitney Bowes. “As an example, we are exploring building an app on Realm for our front-line workers to scan a package that would automatically sync the data back to MongoDB Atlas providing consistent reporting and up-to-date logistics throughout the shipping journey.” With MongoDB Realm Sync, mobile developers have the tools to make data sync simple, making sure they both build apps fast, while still making sure that even complex components like real-time data sync are built right. Try MongoDB Realm Sync, and get started building your offline-first app. Try MongoDB Realm Sync Today