Build Better Mobile Apps -- Running MongoDB Realm and Google Cloud

Dana Groce

#partners#technology#Mobile#MongoDB Realm

We’re partnering with Google Cloud to offer MongoDB Realm as part of the MongoDB Cloud stack with Google Cloud to service users globally whether you’re building a new mobile app or modernizing an existing one.

Realm’s integrated application development services make it easy for developers to build industry leading apps on mobile devices and the web. With MongoDB Atlas running as a service with Google Cloud, it’s easy to connect your mobile database to Google services.

Customers choose Google Cloud to:

  • avoid vendor lock-in by running multi-cloud and hybrid cloud deployments
  • take advantage of Google Cloud’s machine learning and advanced analytics abilities
  • stay secure with the same protections Google Cloud itself uses to guard their data, applications, and infrastructure.

Why MongoDB Realm for Mobile?

Realm comes with 3 key features:

  1. Cross-platform mobile database
  2. Cross-platform mobile sync solution
  3. Time-saving application development services

Mobile Database

Realm’s mobile database is an open source, developer-friendly alternative to CoreData and SQLite. With Realm’s open source database, mobile developers can build offline-first apps in a fraction of the time. Supported languages include Swift, C#, Xamarin, JavaScript, Java, ReactNative, Kotlin, and Objective-C.

Realm’s Database was built with a flexible, object-oriented data model, so it’s simple to learn and mirrors the way developers already code. Because it was built for mobile, applications built on Realm are reliable, highly performant, and work across platforms.

Sync Solution

Realm Sync is an out-of-the-box synchronization service that keeps data up-to-date between devices, end users, and your backend systems, all in real-time.

It eliminates the need to work with REST, simplifying your offline-first app architecture. Use Sync to backup user data, build collaborative features, and keep data up to date whenever devices are online - without worrying about conflict resolution or networking code.

Powered by the Realm Mobile Database on the client-side and MongoDB Atlas on the backend, Realm is optimized for offline use and scales with you. Building a first-rate app has never been easier.

Application Development Services

With Realm app development services, your team can spend less time integrating backend data for your web apps, and more time building the innovative features that push your business initiatives forward. Services include:

  • GraphQL
  • Functions
  • Triggers
  • Data access controls
  • User authentication

Use these products from Google to accelerate the development and deployment of backend services:

  • Google Kubernetes Engine (GKE)
  • Google Cloud Functions (FaaS)
  • Google App Engine (PaaS)

Realm and MongoDB Atlas with Google Cloud and Android

As Realm is a MongoDB product offered through Atlas, and Atlas is used by Realm to sync data between the database and clients, Google Cloud and Atlas abilities are key to the Realm user experience.

Figure 1: Screenshot of Realm offered through MongoDB Cloud UI

MongoDB Atlas and Google Cloud

MongoDB Atlas delivers a fully managed service on Google Cloud’s globally scalable and reliable infrastructure. Atlas allows users to manage their MongoDB databases easily through the UI or an API call. It’s simple to migrate to, and offers sophisticated features such as Global Clusters that offer low-latency read and write access anywhere across the globe.

3 Key Abilities with MongoDB Atlas and Google Cloud

Geographic Presence

  • All Google Cloud regions have at least 3 availability zones, providing higher availability, resiliency and geographic availability. Other public clouds do not have the same reliability guarantees.

Network Offering — Cost and Customer Benefits

  • Global VPC - global resources that reduce complexity in networking implementation
  • Performance - premium tier leverages performance of the Google Cloud network improving application performance and latency across tiers
  • Price - better pricing ratio for network egress costs

Native Integrations

  • Security -- Atlas offers native integrations to Google Auth through Realm, support for Google Cloud KMS for additional encryption at rest or MongoDB Client-Side Field Level Encryption, and OAuth flow based console integration
  • Billing -- pay as you go billing on Google Cloud Marketplace (Realm is purchased through Atlas credits similarly on Marketplace)

Realm and Android

With Realm, you can create mobile applications for Android devices. Realm supports all versions of the Android API after level 9 (Android 2.3 Gingerbread). Below is a sample reference architecture which shows how to leverage MongoDB Atlas with Google Cloud as an Operational Data Layer (ODL) / Operational Data Store (ODS) and build mobile applications using MongoDB Mobile and Realm Sync.

Figure 2: Reference Architecture for ODL on MongoDB Atlas and Realm with Google Cloud

Realm Customer Story — A Leading New York Healthcare Payer

MongoDB has partnered with Exafluence to deliver a COVID employee self-assessment health checker app for a leading healthcare payer in New York since the onset of the pandemic, they’ve needed to quickly adapt to new operational standards, as the situation with COVID evolves. MongoDB Atlas, Realm, Google Cloud, and Exafluence have all been a key part of allowing their onsite operations to continue.

The CDC and New York State require organizations to keep track of which of their employees reporting to a physical office for work. As a result, the organization must monitor their New York based employees who still come onsite in order to support their members. They needed an app that would capture their employees’ health, and ask a series of questions to determine if the associate was able to enter the facility.

Exafluence -- a MongoDB Global Strategic Partner working with the healthcare payer’s HR team and business team -- was able to deliver a complete solution in only three weeks from start to go-live. This rapid deployment was made possible using MongoDB Atlas, Realm, and Google Cloud. The completed app includes:

  • support for mobile devices
  • a web Portal to aggregate information
  • use of QR Scans to confirm access on iPads deployed in facility entrances
  • integration with Active Directory and alerts to the funds email system

This rapid deployment was made possible using MongoDB Atlas and Realm. The organization and Exafluence chose Realm because it’s application development services make it easy to work with data across both web and mobile applications. Realm works with React js, provides offline sync and is Atlas cloud ready.

MongoDB Atlas and Realm also make it easy to rapidly develop new features when the next stage of the pandemic changes app requirements. Exafluence will be able to quickly add app features tied to vaccination, like the ability for employees to disclose and share immunization certification via MongoDB’s FHIR API.

Prior to the Covid App, this healthcare payer chose to use Atlas on Google Cloud because the fully managed, global DBaaS accelerates development and allows them to manage both structured and unstructured data. They also needed a solution for analytics involving geocoding, machine learning, and dashboarding. With Atlas and Google Cloud, their teams get agility while with elastic scaling and provision on-demand resources.

Additional differentiators that drove the organization to select Google Cloud include:

  • Maps API
  • Air flow for scheduling
  • Cloud identity
  • Kubernetes deployment and seamless integration with MongoDB and Realm for mobile development
  • Scalable VM environments
  • Meeting CISO requirements

They were able to automate and offload operational tasks while taking advantage of built-in security best practices, and this in turn reduced regulatory risk. With Atlas and Google Cloud, their teams can also elastically scale and provision on-demand resources to build more microservices, in-line with their agile development requirements.