Maxime Beugnet

40 Minutes to Build a Serverless COVID-19 REST and GraphQL APIs

How do you turn messy, inconsistent CSVs into a scalable, serverless API? This live demo shows you how to build one in minutes using MongoDB.

40 Minutes to Build a Serverless COVID-19 REST and GraphQL APIs
#1about 2 minutes

The challenge of making raw COVID-19 data usable

The project's goal was to transform raw, hard-to-use COVID-19 data from Johns Hopkins University into a clean, queryable dataset.

#2about 7 minutes

Analyzing inconsistent daily report CSV files

The initial daily CSV files were unusable for a stable API because their schemas, column names, and date formats changed over time.

#3about 3 minutes

Using consistent time-series data as a source

The time-series CSV files provided a more stable and predictable data source with one column per day, which was better but still needed transformation.

#4about 7 minutes

Transforming wide CSV data into a document model

A Python script was used to pivot the wide CSV data, transforming date columns into rows and creating a GeoJSON structure for mapping.

#5about 1 minute

Overview of the final MongoDB collection structure

The final dataset is organized into five collections, including combined global and US data, pre-calculated daily counts, and a country summary collection.

#6about 6 minutes

Introducing MongoDB Atlas and the Realm serverless platform

MongoDB Atlas provides managed database clusters, while MongoDB Realm offers a backend-as-a-service layer for building serverless applications on top of Atlas.

#7about 3 minutes

Building a GraphQL API automatically with MongoDB Realm

MongoDB Realm can automatically generate a complete GraphQL API endpoint based on a collection's defined schema and access rules.

#8about 5 minutes

Securing the GraphQL API with authentication providers

Realm provides built-in authentication providers, such as anonymous or email and password, to secure API endpoints and manage user access.

#9about 5 minutes

Creating a serverless REST API with Realm webhooks

A custom REST API can be built using MongoDB Realm's HTTP services and webhooks, which execute serverless JavaScript functions to query the database.

#10about 3 minutes

The environmental benefits of serverless architecture

Serverless platforms improve energy efficiency by sharing compute resources and eliminating idle servers, contributing to a greener data infrastructure.

#11about 5 minutes

Handling evolving data formats with a flexible schema

MongoDB's flexible document schema allows for easier data migration and application updates by accommodating different document structures within the same collection.

Related jobs
Jobs that call for the skills explored in this talk.

test

Milly
Vienna, Austria

Intermediate

test

Milly
Vienna, Austria

Intermediate

Featured Partners

Related Articles

View all articles
CH
Chris Heilmann
All the videos of Halfstack London 2024!
Last month was Halfstack London, a conference about the web, JavaScript and half a dozen other things. We were there to deliver a talk, but also to record all the sessions and we're happy to share them with you. It took a bit as we had to wait for th...
All the videos of Halfstack London 2024!
CH
Chris Heilmann
Douglas Crockford - JSON and Beyond
Back at the WeAreDevelopers World Congress in July, Douglas Crockford took the stage to tell the JSON story and what's next. You can watch the video or read all about it here.IntroductionHello dear friends! Today, we delve into the world of data inte...
Douglas Crockford - JSON and Beyond
CH
Chris Heilmann
Dev Digest 134 - Where pixels sing?
News and ArticlesWeAreDevelopers LIVE Data and Security Day is on Wednesday, 25/09/2024. Learn about OPC UA Updates, Best Practices for Using GitHub Secrets, Passwordless Web 1.5, Emerging AI Security Risks, Data Privacy in LLMs and get a chance to t...
Dev Digest 134 - Where pixels sing?

From learning to earning

Jobs that call for the skills explored in this talk.

Mongo DB Developer

Mongo DB Developer

cognizant

35K
MongoDB
Unit testing
Adobe InDesign
Configuration Management