MongoDB Stitch is a serverless platform designed to help you easily and securely build an application on top of MongoDB Atlas. It lets developers focus on building applications rather than on managing data manipulation code, service integration, or backend infrastructure. MongoDB Stitch also makes it simple to respond to backend changes immediately, allowing you to simplify client side code and build complex flows more easily. This talk will cover ways that MongoDB Stitch helps you respond to changes in your database and take your applications to the next level.
15. Global Operational Data
What users want
• Instant gratification
• Relentless improvement
• Personalization
• Yadda...yadda
16. Global Operational Data
What users want
• Instant gratification
• Relentless improvement
What you want
• Happy users (see above)
17. Global Operational Data
What users want
• Instant gratification
• Relentless improvement
What you want
• Happy users
• Stay ahead of competition
• low-latency experiences
• constant agile iteration
18. Global Operational Data
What users want
• Instant gratification
• Relentless improvement
What you want
• Happy users
• Stay ahead of competition
• Reporting
• Single connection string
• Aggregations
19. Global Operational Data = meaningful reach
What users want
• Instant gratification
• Relentless improvement
What you want
• Happy users
• Stay ahead of competition
• Global awareness
28. Global Multi-Region Replication
Advantages
• Single connection string globally
• Low latency reads anywhere
• Cross-region High Availability
• Great for reference data
Disadvantages
• All writes go to preferred region (a large part of the world experiences slow writes)
• Low latency reads require secondary read concern
(You could even have your preferred region follow the sun to achieve part-time global writes)
30. Cluster Per Region
Advantages
• Schema doesn’t need to reflect data affinity
• Easy today in MongoDB Atlas
• Independently scalable
Disadvantages
• No global aggregation
• Application tier manages end user to connection string affinity
31. Can we get the best
of both worlds?
Yes.
You, too, can have instant
gratification.
38. What is a location attribute?
Generally...
an ISO 3166-1 country code
• like US, DE, IN, or JP
Or optionally and more specifically
an ISO-3166-2 subdivision code
• like US-CA or US-NY
Examples Description Potential Region Affinity
US United States US East
DE Germany Frankfurt
IN India Mumbai
JP Japan Tokyo
US-CA California US West
US-NY New York US East
40. MongoDB Atlas will be very opinionated...
In the Data Explorer, you’ll be guided to set a shard key like
• {location : 1, <identifier> : 1}
You’ll receive global-targeting query examples
• db.globalColl.find_one( { location : "XY", <identifier> : 123 })
• etc.
45. Concise and global, it will look like
mongodb+srv://user:pass@globalCluster-rzeyq.mongodb.net
46. Concise and global, it will look like
• Your driver will use this address to discover every mongos in the cluster globally
• Taking advantage of the MongoDB 3.6 driver support for SRV records
… so you can deploy the same application code everywhere
mongodb+srv://user:pass@globalCluster-rzeyq.mongodb.net
52. Massive reach
MongoDB Atlas
• in-country regions for 27% of the world population
• with a much higher percent served by regions in nearby countries
Available in 56 global cloud regions
• AWS: 15 regions (38 availability zones)
• Azure: 26 regions (26 availability zones w/ 60 Fault Domains)
• GCP: 15 regions (38 Availability zones)
And the big three cloud providers MongoDB Atlas delivers on are expanding fast
53. There are gaps
Least served regions from a Cloud perspective
Africa
• S. Africa announced by Azure; a long way from most of Africa’s population, however
• Biggest economies in Africa: Nigeria, South Africa, Egypt; with Ethiopia now the fastest growing
Middle East
• We’ll see
China
• It’s complicated...
Russia
• It’s also complicated…
• Frankfurt remains best bet but also Finland on Google Cloud
Special / Government / Compliance contexts
54. But MongoDB runs everywhere
Over time we should expect more and more of the world’s population to be well served by major
cloud infrastructure
But you can always run your own MongoDB outside of where the big public cloud platforms and
MongoDB Atlas are operational
• MongoDB Ops Manager / MongoDB Cloud Manager
• Live Migrate to MongoDB Atlas when ready
So you can have a seamless development experience in any context
58. Path to Global Over Time
1. Cluster – Single Region ← deploy today for free on Atlas
a. Focus on finding traction
b. Scale up when needed in a few minutes on Atlas
2. Cluster – Multi Region HA
a. Get your application HA as well
b. Scale up when needed in a few minutes on Atlas
3. Cluster – add Global Read Regions
a. Route users to nearby application instance; use secondary reads
b. Scale up when needed in a few minutes on Atlas
4. Enable Global Writes
a. add a second write zone
b. add location attribute to your data & shard your global collections in the Atlas UI
5. Expand Reach of Global Cluster
a. add more write zones
b. or add shards to existing zones
c. scale up any time