Learn about the modernization of application development using the MongoDB platform on AWS. In this session, discover key capabilities of MongoDB Atlas for on-demand cluster deployment, high availability, horizontal scalability, and geographically distributed operations. Additionally, learn how to quickly build a website or mobile application that is backed by MongoDB and that uses the MongoDB Stitch serverless platform.
1. AWS Summit Ciudad de México
Descubre MongoDB Atlas y MongoDB Stitch
Alejandro Mancilla - Arquitecto de Soluciones
2. 2
Bases de datos para aplicaciones modernas
Distribución
geográfica
Requisitos claves de bases de datos modernas
Confiabilidad y Alta
Disponibilidad
Elasticidad bajo
demanda
3. ¿Cómo implemento estas capacidades en la nube?
Gestión de bases de
datos en la nube
Auto-administrado
alias “Lift and Shift”
Base de datos
como servicio -
DBaaS
Slow and complicated
No elasticity
Highly manual
Reduces ROI and agility
Self-service
Fully elastic
Consumption based
Reduces TCO and accelerates
time to value
Encrucijada
8. 8
Soporta de 2 a 50 copias
de datos and se auto-recupera
Application
Driver
Primary
Secondary
Secondary
Replicación
¡MongoDB Atlas facilita el despliegue entre
varias regiones!
Alta Disponibilidad
12. 12
Capacidad bajo demanda
Vertical Scaling
in MongoDB Atlas:
Pick your base hardware
configuration, e.g. RAM/CPU.
Fine tune storage and IOPS
configurations.
15. 15
Capacidad bajo demanda
Horizontal Scaling
in MongoDB Atlas:
2) Go a step further and create
hidden, non-electable, secondary
nodes for workload isolation and
extensive local reads.
16. 16
Co-locating operational and analytical workloads
Analytical
Primary Secondary Secondary Secondary
{use = analytics}
Transactional
BI & Reporting
Predictive Analytics
& Data Science
Aggregations
Secondary
{use = analytics}
Compass
BI Connector
18. 18
Distribución geográfica
Requisitos: ● Write to many nodes
● Read from many nodes
○ Note: All nodes in any
MongoDB cluster is
readable. So we will focus
on writes.
19. 19
Escrituras en múltiples nodos con MongoDB Atlas:
1) Fragmente/particione su clúster, e.g. X número de replica sets.
Distribución geográfica
21. 21
Global Writes in MongoDB Atlas:
2) Zone Sharding: logical zones that you define, e.g. country code, that contains
1 to many shards
Distribución geográfica global
24. Presentation
UI Components
UI Process Components
Business
Business
Workflow
Business
Components
Business
Entities
Application Facade
Data
Data Access
Components
Data Helper
Utilities
Server
Agents
Data Sources Services
Users
External
Systems
Service
Interface
CrossCutting
Security
OperationalManagement
Communication
Aplicaciones tradicionales….
• Contain many, separate layers
• Each layer is separate code, infrastructure
• Connecting/Maintaining layers is lots of workSecurity
&
Auth
Integration
Business Logic
Data Access
Hosting
Construcción de una aplicación
25. Traditional Applications….
• Contain many, separate layers
• Each layer is separate code, infrastructure
• Connecting/Maintaining layers is lots of work
Building applications with a Serverless Platform....
• No infrastructure to scale/patch/manage
• Simplified service integrations
• Easy to configure security
• Hosted, serverless business logic
Presentatio
n
UI Components
UI Process Components
Business
Business
Workflow
Business
Components
Business
Entities
Application Facade
Data
Data Access
Components
Data Helper
Utilities
Server
Agents
Data Sources Services
Users
External
Systems
Construcción de una aplicación serverless
27. Traditional Applications….
• Contain many, separate layers
• Each layer is separate code, infrastructure
• Connecting/Maintaining layers is lots of work
Building applications with a Serverless Platform....
• No infrastructure to scale/patch/manage
• Simplified service integrations
• Easy to configure security
• Hosted, serverless business logic
Presentatio
n
UI Components
UI Process Components
Business
Business
Workflow
Business
Components
Business
Entities
Application Facade
Data
Data Access
Components
Data Helper
Utilities
Server
Agents
Data Sources Services
Users
External
Systems
Building a Serverless Application
28. Traditional Applications….
• Contain many, separate layers
• Each layer is separate code, infrastructure
• Connecting/Maintaining layers is lots of work
Building applications with a Serverless Platform....
• No infrastructure to scale/patch/manage
• Simplified service integrations
• Easy to configure security
• Hosted, serverless business logic
Presentatio
n
UI Components
UI Process Components
Business
Business
Workflow
Business
Components
Business
Entities
Application Facade
Data
Data Access
Components
Data Helper
Utilities
Server
Agents
Data Sources Services
Users
External
Systems
Building a Serverless Application
29. QueryAnywhere
Simple, streamlined syntax
for data access, robust
access rules, hosting
included
Build full apps for iOS,
Android, Web, and IoT
Functions
Integrate server-side logic +
microservices + cloud
services
Power apps with Server-side
logic, or enable Data as a
Service with custom APIs.
Triggers
Real-time notifications let your
application functions react in
response to database changes
App responds immediately to
change
Mobile Sync
Automatically synchronizes
data between documents
held locally in MongoDB
Mobile and your backend
database
(Beta)
Servicios de MongoDB Stitch para crear una Aplicacion
30. Code user authentication
Code data access controls
Provision backend server
Install runtime environment
Add code to make backend HA
Add code to scale backend
Monitor & manage backend infrastructure
Code REST API for frontend to use backend
Code backend application logic
Code application frontend
Code against each external service API
Continuously poll database for changes
Aplicación estándar
Simple JSON Config
Handled automatically by Stitch and Atlas
Code frontend using single SDK/API to
access backend services
MongoDB Atlas + Stitch
Backend
Data Access
Frontend
Provide JS code for Stitch Functions
31. Cloud Infrastructure
Acces Rules & Service Integrations
Application Logic
MongoDB Atlas
Rapidly deploy, dynamically scale, and distribute
databases across regions and cloud providers
MongoDB Stitch
Serverless platform with integrated authentication,
access rules, functions, and service integrations.
Client Application or Service
Application Logic
Data
MongoDB Stitch SDKs
Native SDKs with integrated authentication, and
providing access to Stitch, Atlas, and integrated
Services.
Modern Applications with MongoDB
32. • Write generic queries from applications
• Respond with precise information based on the
request
SDKs:
• JavaScript, Android, and iOS SDKs
• Integrated Authentication, Database, and Service
requests
Stitch Rules:
• Fine-grained access rules relating to all aspects of
Stitch
• Access to context from users, request, external
services, functions, etc.
Stitch QueryAnywhere
Stitch
(Authentication & Access Rules)
Application
(Stitch SDK)
MongoDB
33. Stitch is a collection of servers that
process application requests
Requests:
• Single actions for Database or Services
• Or executing a Stitch Function
• Integrated with Stitch’s Rules
Functions:
• Scalable, hosted JavaScript (ES6) Functions
• Integrated with application context
• User, Request, Services, Values, etc.
Stitch Functions
addtoCart calcStats
… sendMail
Application
(Stitch SDK)
MongoDB
Stitch Functions
34. Stitch Triggers
• Register a Trigger in your app
• Stitch creates, maintains Change Stream
• Monitors for changes
• Runs Functions on matching changes
Benefits of Stitch Triggers
• React to database events in real-time
• Respond with hosted JavaScript functions
• Separate resources from database
• Fully managed environment
• Access to broad application context
Stitch Functions
MongoDB
addtoCart calcStats
… sendMail
order
Stitch Triggers