SlideShare a Scribd company logo
Building Intelligent Apps
with MongoDB and
Google Cloud
JANE FINE
Director of Product Marketing, Analytics
@janeuyvova
Analytics is a Constant Underachiever
2000
Business Intelligence
Data Warehouse, OLAP,
Ad-hoc, Reporting, Dashboards
Big Data
Hadoop, MapReduce,
Predictive, ML, Real-time
2010
AI
Intelligent Things, IoT,
Systems of Engagement
2017
“In 2018, 75% of AI projects will underwhelm because they fail to model operational considerations, causing
business leaders to reset the scope of AI investments.”
FORRESTER.COM/PREDICTIONS
Applications Change Our World
$40B+ eCommerce platform
experience of millions of mobile
gamers
metadata for every single item
for sale on eBay.com
world’s leading design
collaboration platform
20M+ users
$150B+ traded
reinvent travel for millions of
customers
lab and clinical analysis for
innovative medicines
personal and business finance
management worldwide
Operational
AI
ML
What We Set Out To Do
ecommerceapp
shop for
products
online
Intelligent App
mobileshoppingchatbot
get personalized
product
recommendations
shop over
MMS/WhatsApp
on mobile device
rec engine
What’s an Intelligent App?
Applications are increasingly combining real-time analytics, machine
learning and AI to provide understand the customer, automate their
tasks and provide knowledge and decision support
Why Is This Hard?
Intelligent App
Developers
Data Scientists
uses: live data
guided by: user stories
produces: functionality
uses: prepared data
guided by: question
produces: insight
RELEASE DEFINE
BUILD
AGILE
DATA
PREP
BUILD
MODEL
GET
INSIGHT
VIZ
DEPLOY
TRAIN/EVAL
eCommerce App:
SwagStore
eCommerce App: SwagStore
Get notified when a
sold-out item is restocked
Browse for your favorite
MongoDB swag
Put items in cart and
checkout
View your orders
MongoDB Stitch Serverless Platform
Streamlines app development with
simple, secure access to data and
services from the client with
thousands of lines less code to write
and no infrastructure to manage.
Getting your apps to market faster
while reducing operational costs.
SwagStore: How We Built It
UI components
Routes
Application Flow Control
Google Authentication
Twilio Notifications
Functions
Rules
Triggers
Service Integrations
Flexible Document Model
Easy to Work With Data
DEMO:
SwagStore
SwagStore + RecEngine
Intelligent eCommerce App: SwagStore +
Receive personalized
product recommendations
based on ML algorithm
Recommendation
Engine
Intelligent SwagStore: How We Built It
SwagStore
Google Cloud ML Trains and
Tunes Model
TensorFlow WALS Algorithm
Google Cloud Endpoints
Serves Recommendations
Stitch Initiates
Recommendations
developer data scientist developer
data engineer
Google Cloud ML Placeholder
Training Recommendation Model
1. install the model code
2. place data into your Cloud Storage Bucket
3. run training script
When the training is finished, the model data is saved in a subdirectory named model under the job
directory of the training task. This data consists of several arrays, all saved in numpy format
./mltrain.sh train gs://recserve_jfmlrecengine/swag_pageviews.csv --data-type web_views
Tuning Recommendation Model
Hyperparameter tuning optimizes your machine learning model for most accuracy
Typically data scientists experimenting with various values, testing the resulting performance of the
model, and then picking a combination of parameters with the best performance. But you can test
every possible combination of parameters…. it would take a very very long time
Each hyperparameter is passed as an
argument to the hyperparameter tuning job
on Cloud ML Engine.
The model writes a TensorFlow summary
with a special tag that's set to the metric that
evaluates the quality of the model. This
summary metric enables the search process
of the Cloud ML Engine hyperparameter
tuning service to rank the trials.
./mltrain.sh tune
gs://recserve_jfmlrecengine/swag_pageviews.csv
--data-type web_views
Generate Recommendations
model.py : generate_recommendations
input
user: row index of the user in the rating matrix
items: list of indexes for items that the user has
rated / viewed
latent factors: row and column factors generated by
training / tuning the model
number of desired recommendations
https://jfmlrecengine.appspot.com/recommendation
?userId=5448543647176335931&numRecs=6
{"articles":
["299824032",
"299935287",
"299865757",
"299959410",
"298157062",
"299816215"]
}
Serving Recommendations with Stitch
MongoDB Stitch send a HTTP GET request to
Google Cloud Endpoint to obtain recommendation
For user who is logged in
Get list of product recommendation
Update user profile with that list
Service Integrations make it simple for your app to
use leading third party services
Functions let you build complex logic and orchestrate data between
clients, services, and MongoDB with server-side JavaScript functions.
Stitch scales precisely to meet your usage.
DEMO:
SwagStore + RecEngine
SwagStore + ChatBot
Intelligent eCommerce App: SwagStore +
Shop for products via
chat interface
AI Chatbot
Intelligent SwagStore: How We Built It
SwagStore
Google DialogFlow:
Intent, Entities, Webhooks
Stitch - Intent Fulfilment Slack - Front End
developer
data scientist
developer data engineer
DialogFlow + Stitch Architecture
Stitch HTTP Service Webhook
Stitch Functions to
retrieve products from
MongoDB
Me: “Can you help me find a jacket?”
ChatBot: “What color would you like?”
Me: “White, please”
ChatBot: “I found you a white Egmont Jacket”
DialogFlow: Rich and Natural Conversational
Experiences Our ChatBot understands and responds to
requests such as:
Stitch Service
Integration
Enabling DialogFlow Fulfillment With Stitch
Stitch security enabled by default
Enabling DialogFlow Fulfillment With Stitch
return item from SwagStore Catalog to DialogFlow
{
"fulfillmentText": "I found you a white Egmont
Packable Jacket. Check it out here:
https://mdb-swag-store.netlify.com/products/299824032"
}
perform $find given
parameters requested by
DialogFlow: product type
and product color
DEMO:
SwagStore + ChatBot
Stitch Makes this Easy
Intelligent App
Developers
Data Scientists
RELEASE DEFINE
BUILD
AGILE
DATA
PREP
BUILD
MODEL
GET
INSIGHT
VIZ
DEPLOY
TRAIN/EVAL
NEED NEW STITCH COLLATERAL
Build. Plug In. Innovate
Intelligent
App
RELEASE DEFINE
BUILD
AGILE
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Close
you use this methodology to build an intelligent app → chances are you
are already being tasked to do that as developers
use stitch to consume services, like GCP or others
you don’t need to learn NLP, or build from scratch
finally get analytics to drive value, utilize your data scientist
get your analytics to change to world, not just your app...
Resources and Credits
MongoDB Stitch:
Google Cloud ML
Tutorials: https://cloud.google.com/solutions/machine-learning/recommendation-system-tensorflow-train-cloud-ml-engine
GitHub: https://github.com/GoogleCloudPlatform/tensorflow-recommendation-wals
DialogFlow
https://dialogflow.com/docs/getting-started
Thank you!
Title and bullet content slide
• Bullet level one
• Bullet level two
• Bullet level three
Thesis (long)
Analytics is a constant underachiever. Elusive, shiny and never delivers. Analytics has been positioned for decades as the next frontier that
will help companies gain competitive advantage and drive the top line growth but it always seems to fall short. Generations of analytics
solutions: BI (2000), dashboards (2005), data science (2010), machine learning (2015)… now AI (2017).
Applications on the other hand provide real, measurable value. They have fundamentally changed how we do things. We interact with them
daily and companies we buy products and services from run their business on applications. It’s visible, measureable, proven. Full stop.
How can we make analytics more impactful? How can you make analytics finally deliver something meaningful the way applications already
have? By embedding your analytics into something your customers use every day. Like your app. Enter intelligent apps.
MongoDB can help you create intelligent apps where operational and analytic workloads merge for the benefit of end customer. MongoDB is
creating tools and approaches that are native to your data and its shape. You can finally do something meaningful with the insight your data
scientists find - use it to capture and delight your customers!
So what: make your data science meaningful, make your developers and data scientists work together and make them both more productive;
build more impactful and interesting applications, delight your customers
abstract
Intelligent apps are emerging as the next frontier in analytics and application development. Learn how
to build intelligent apps on MongoDB powered by Google Cloud with TensorFlow for machine learning
and DialogFlow for artificial intelligence. Get your developers and data scientists to finally work
together to build applications that understand your customer, automate their tasks, and provide
knowledge and decision support.
enables data scientists to build and bring superior machine learning models to production. Google DialogFlow
helps developers build natural and rich conversational experiences quickly and easily to enage customers in a
new way.
general feedback - dry run 1
show more code
make it obvious: 1, 2,3 - especially around building the model
talk about getting devs and data scientists to work together
twiggle.com - check this out
need to set intelligent apps in the context - forrester, g2crowd are
talking about them, use examples of companies using AI… but maybe
you are not a google, or an ebay - how do you make this easy ? use
this methodology; don’t need to learn NLP, build from scratch
Outline
Setup: analytics contact underachiever/ apps change the world / data
scientists are frustrated / both devs and data scientists cost $$$!
building blocks:
first you have ecommerce app
then you have ecommerce app + rec engine
then you enable you users to shop for products via chat
then you push recommendations back to cloud ML
how to we make this easy
how to we get dev and data scientists to work together
Title and bullet two content slide
• Bullet level one
• Bullet level two
• Bullet level three
• Bullet level one
• Bullet level two
• Bullet level three
Short title with
caption and photo
or graphic slide
A caption or a quote for a photo, logo, graphic,
social medial screenshot, etc. can go here.
Short title with
caption and content
slide
A caption or subhead for the right content can
go here. Content can be table, chart, diagram,
smart object, photo or multimedia.
Bar Graph
Title and table slide
Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
Sample single column code slide
{ "_id" : 5,
"line_items" : [
{ "id": 123,
"title": "USB Battery",
"price": 15.0,
"notify_when_ship": [{"name": "eliot", "phone": "123-456-7890"}],
"shipped": true },
{ "id": 512,
"title": "Hip T-shirt",
"price": 45.0,
"shipped": false }
]
}
Sample two column code slide
orders:
{
_id: 5,
line_items : [
{ id: 123,
title : "USB Battery",
price: 15.0 },
shipped: true
{ id: 512,
title : "Hip T-shirt",
price : 45.0,
shipped: false }
],
}
db.orders.update(
{ _id: 5 },
{ $mul: {
"line_items.$[li].price":
0.8}},
{arrayFilters:[
{"li.shipped":{$ne:true}}
]}
)
Application
Driver
Query Router Query Router•••
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
Query Router
•••
Shard 1 Shard 2 Shard 2 Shard N
Active/active data center
Secondary – A Secondary – B Secondary – C
Secondary – B Secondary – C Secondary – A
Data Center – EastData Center – Central
Arbiter – B Arbiter – CArbiter – A
Data Center – West
Primary – B
Secondary – B
Primary – A Primary – C
Secondary – C Secondary – A
Active/standby data center
Data Center – West
Primary – BPrimary – A Primary – C
Secondary – B Secondary – C Secondary – A
Data Center – East
Secondary – B Secondary – CSecondary - A
SPEAKER NAME
Speaker title, company
and handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
SPEAKER NAME
Speaker title, Company
Handle
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Title only with footer
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Divider Slide Green
Divider Slide Black
Divider Slide White
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Icons
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Icon Library (PDF)
https://www.dropbox.com/sh/28kkukpfjjgxzhs/AACJZlTs4g7WX7L6WAfvV5Oea?dl=0
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Icon Library (PDF)
https://www.dropbox.com/sh/28kkukpfjjgxzhs/AACJZlTs4g7WX7L6WAfvV5Oea?dl=0
MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud
Icon Library (PDF)
https://www.dropbox.com/sh/28kkukpfjjgxzhs/AACJZlTs4g7WX7L6WAfvV5Oea?dl=0
Ad

Recommended

PPTX
MongoDB World 2018: Keynote
MongoDB
 
PPTX
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
MongoDB
 
PDF
Webinar: Building Your First App with MongoDB and Java
MongoDB
 
PDF
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
GeeksLab Odessa
 
PPTX
MongoDB Stich Overview
MongoDB
 
PDF
MongoDB .local Chicago 2019: Practical Data Modeling for MongoDB: Tutorial
MongoDB
 
PDF
An introduction to MongoDB
Universidade de São Paulo
 
PDF
What do you mean, Backwards Compatibility?
Trisha Gee
 
PDF
Map/Confused? A practical approach to Map/Reduce with MongoDB
Uwe Printz
 
PDF
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB
 
PDF
Creating, Updating and Deleting Document in MongoDB
Wildan Maulana
 
PDF
MongoDB Launchpad 2016: What’s New in the 3.4 Server
MongoDB
 
PPTX
Morphia, Spring Data & Co.
Tobias Trelle
 
PPS
MongoDB crud
Darshan Jayarama
 
PPTX
Introduction to JSON & AJAX
Raveendra R
 
PDF
Entity Relationships in a Document Database at CouchConf Boston
Bradley Holt
 
PDF
MongoDB.local DC 2018: Tutorial - Data Analytics with MongoDB
MongoDB
 
PPTX
Keynote: New in MongoDB: Atlas, Charts, and Stitch
MongoDB
 
PDF
The Ring programming language version 1.5.3 book - Part 43 of 184
Mahmoud Samir Fayed
 
PPTX
PistonHead's use of MongoDB for Analytics
Andrew Morgan
 
PPTX
Webinar: Transitioning from SQL to MongoDB
MongoDB
 
PDF
Visualizing Mobile Broadband with MongoDB
MongoDB
 
PPTX
Mongo db queries
ssuser6d5faa
 
PPTX
Query in Couchbase. N1QL: SQL for JSON
Keshav Murthy
 
PPTX
Benefits of Using MongoDB Over RDBMS (At An Evening with MongoDB Minneapolis ...
MongoDB
 
KEY
MongoDB, PHP and the cloud - php cloud summit 2011
Steven Francia
 
PDF
Paintfree Object-Document Mapping for MongoDB by Philipp Krenn
JavaDayUA
 
PPTX
Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PPTX
MongoDB.local Sydney 2019: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PPTX
Building Intelligent Apps with MongoDB and Google Cloud - Jane Fine
MongoDB
 

More Related Content

What's hot (19)

PDF
Map/Confused? A practical approach to Map/Reduce with MongoDB
Uwe Printz
 
PDF
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB
 
PDF
Creating, Updating and Deleting Document in MongoDB
Wildan Maulana
 
PDF
MongoDB Launchpad 2016: What’s New in the 3.4 Server
MongoDB
 
PPTX
Morphia, Spring Data & Co.
Tobias Trelle
 
PPS
MongoDB crud
Darshan Jayarama
 
PPTX
Introduction to JSON & AJAX
Raveendra R
 
PDF
Entity Relationships in a Document Database at CouchConf Boston
Bradley Holt
 
PDF
MongoDB.local DC 2018: Tutorial - Data Analytics with MongoDB
MongoDB
 
PPTX
Keynote: New in MongoDB: Atlas, Charts, and Stitch
MongoDB
 
PDF
The Ring programming language version 1.5.3 book - Part 43 of 184
Mahmoud Samir Fayed
 
PPTX
PistonHead's use of MongoDB for Analytics
Andrew Morgan
 
PPTX
Webinar: Transitioning from SQL to MongoDB
MongoDB
 
PDF
Visualizing Mobile Broadband with MongoDB
MongoDB
 
PPTX
Mongo db queries
ssuser6d5faa
 
PPTX
Query in Couchbase. N1QL: SQL for JSON
Keshav Murthy
 
PPTX
Benefits of Using MongoDB Over RDBMS (At An Evening with MongoDB Minneapolis ...
MongoDB
 
KEY
MongoDB, PHP and the cloud - php cloud summit 2011
Steven Francia
 
PDF
Paintfree Object-Document Mapping for MongoDB by Philipp Krenn
JavaDayUA
 
Map/Confused? A practical approach to Map/Reduce with MongoDB
Uwe Printz
 
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB
 
Creating, Updating and Deleting Document in MongoDB
Wildan Maulana
 
MongoDB Launchpad 2016: What’s New in the 3.4 Server
MongoDB
 
Morphia, Spring Data & Co.
Tobias Trelle
 
MongoDB crud
Darshan Jayarama
 
Introduction to JSON & AJAX
Raveendra R
 
Entity Relationships in a Document Database at CouchConf Boston
Bradley Holt
 
MongoDB.local DC 2018: Tutorial - Data Analytics with MongoDB
MongoDB
 
Keynote: New in MongoDB: Atlas, Charts, and Stitch
MongoDB
 
The Ring programming language version 1.5.3 book - Part 43 of 184
Mahmoud Samir Fayed
 
PistonHead's use of MongoDB for Analytics
Andrew Morgan
 
Webinar: Transitioning from SQL to MongoDB
MongoDB
 
Visualizing Mobile Broadband with MongoDB
MongoDB
 
Mongo db queries
ssuser6d5faa
 
Query in Couchbase. N1QL: SQL for JSON
Keshav Murthy
 
Benefits of Using MongoDB Over RDBMS (At An Evening with MongoDB Minneapolis ...
MongoDB
 
MongoDB, PHP and the cloud - php cloud summit 2011
Steven Francia
 
Paintfree Object-Document Mapping for MongoDB by Philipp Krenn
JavaDayUA
 

Similar to MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud (20)

PPTX
Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PPTX
MongoDB.local Sydney 2019: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PPTX
Building Intelligent Apps with MongoDB and Google Cloud - Jane Fine
MongoDB
 
PDF
MongoDB.local Austin 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PDF
MongoDB.local DC 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
PDF
10 Things Every PHP Developer Should Know About Machine Learning
10x Nation
 
PDF
10 Things Every PHP Developer Should Know About Machine Learning
Christopher Mohritz
 
PDF
Amazon Machine Learning #AWSLoft Berlin
AWS Germany
 
PDF
Einführung in Amazon Machine Learning - AWS Machine Learning Web Day
AWS Germany
 
PDF
The Rise of AI and Machine Learning in Mobile App Development.pdf
Lilly Gracia
 
PDF
Internet of Things Chicago - Meetup
Jason Lobel
 
PDF
Building Integrated Applications on Google's Cloud Technologies
Chris Schalk
 
PDF
Big Data & Artificial Intelligence
Zavain Dar
 
PDF
Developer's Introduction to Machine Learning
Christopher Mohritz
 
PDF
Demystifying Machine Learning - How to give your business superpowers.
10x Nation
 
PPTX
Cognitive APIs and Conversational Interfaces
Pavel Veller
 
PDF
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
Trivadis
 
PDF
10 Things Every Entrepreneur Needs to Know About Artificial Intelligence
Christopher Mohritz
 
PDF
10 Things Every Entrepreneur Needs to Know About Artificial Intelligence
10x Nation
 
PDF
Machine Learning is more than Algorithms - A Consultant's Perspective on the ...
Niklas Haas
 
Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
MongoDB.local Sydney 2019: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
Building Intelligent Apps with MongoDB and Google Cloud - Jane Fine
MongoDB
 
MongoDB.local Austin 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
MongoDB.local DC 2018: Building Intelligent Apps with MongoDB & Google Cloud
MongoDB
 
10 Things Every PHP Developer Should Know About Machine Learning
10x Nation
 
10 Things Every PHP Developer Should Know About Machine Learning
Christopher Mohritz
 
Amazon Machine Learning #AWSLoft Berlin
AWS Germany
 
Einführung in Amazon Machine Learning - AWS Machine Learning Web Day
AWS Germany
 
The Rise of AI and Machine Learning in Mobile App Development.pdf
Lilly Gracia
 
Internet of Things Chicago - Meetup
Jason Lobel
 
Building Integrated Applications on Google's Cloud Technologies
Chris Schalk
 
Big Data & Artificial Intelligence
Zavain Dar
 
Developer's Introduction to Machine Learning
Christopher Mohritz
 
Demystifying Machine Learning - How to give your business superpowers.
10x Nation
 
Cognitive APIs and Conversational Interfaces
Pavel Veller
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
Trivadis
 
10 Things Every Entrepreneur Needs to Know About Artificial Intelligence
Christopher Mohritz
 
10 Things Every Entrepreneur Needs to Know About Artificial Intelligence
10x Nation
 
Machine Learning is more than Algorithms - A Consultant's Perspective on the ...
Niklas Haas
 
Ad

More from MongoDB (20)

PDF
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB
 
PDF
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB
 
PDF
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB
 
PDF
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB
 
PDF
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB
 
PDF
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB
 
PDF
MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB
 
PDF
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB
 
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB
 
PDF
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB
 
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB
 
PDF
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB
 
PDF
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB
 
PDF
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB
 
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB
 
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB
 
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB
 
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB
 
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB
 
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB
 
Ad

Recently uploaded (20)

PDF
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
PDF
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
PDF
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
PPTX
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Josef Weingand
 
PDF
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
PDF
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
PDF
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
PDF
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
 
PDF
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
All Things Open
 
DOCX
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
PDF
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
PDF
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
PPTX
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
PDF
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
PDF
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
PDF
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Safe Software
 
PDF
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
PDF
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
 
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
PDF
Python Conference Singapore - 19 Jun 2025
ninefyi
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Josef Weingand
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
 
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
All Things Open
 
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
Python Conference Singapore - 19 Jun 2025
ninefyi
 

MongoDB World 2018: Building Intelligent Apps with MongoDB & Google Cloud

  • 1. Building Intelligent Apps with MongoDB and Google Cloud
  • 2. JANE FINE Director of Product Marketing, Analytics @janeuyvova
  • 3. Analytics is a Constant Underachiever 2000 Business Intelligence Data Warehouse, OLAP, Ad-hoc, Reporting, Dashboards Big Data Hadoop, MapReduce, Predictive, ML, Real-time 2010 AI Intelligent Things, IoT, Systems of Engagement 2017 “In 2018, 75% of AI projects will underwhelm because they fail to model operational considerations, causing business leaders to reset the scope of AI investments.” FORRESTER.COM/PREDICTIONS
  • 4. Applications Change Our World $40B+ eCommerce platform experience of millions of mobile gamers metadata for every single item for sale on eBay.com world’s leading design collaboration platform 20M+ users $150B+ traded reinvent travel for millions of customers lab and clinical analysis for innovative medicines personal and business finance management worldwide
  • 5. Operational AI ML What We Set Out To Do ecommerceapp shop for products online Intelligent App mobileshoppingchatbot get personalized product recommendations shop over MMS/WhatsApp on mobile device rec engine
  • 6. What’s an Intelligent App? Applications are increasingly combining real-time analytics, machine learning and AI to provide understand the customer, automate their tasks and provide knowledge and decision support
  • 7. Why Is This Hard? Intelligent App Developers Data Scientists uses: live data guided by: user stories produces: functionality uses: prepared data guided by: question produces: insight RELEASE DEFINE BUILD AGILE DATA PREP BUILD MODEL GET INSIGHT VIZ DEPLOY TRAIN/EVAL
  • 9. eCommerce App: SwagStore Get notified when a sold-out item is restocked Browse for your favorite MongoDB swag Put items in cart and checkout View your orders
  • 10. MongoDB Stitch Serverless Platform Streamlines app development with simple, secure access to data and services from the client with thousands of lines less code to write and no infrastructure to manage. Getting your apps to market faster while reducing operational costs.
  • 11. SwagStore: How We Built It UI components Routes Application Flow Control Google Authentication Twilio Notifications Functions Rules Triggers Service Integrations Flexible Document Model Easy to Work With Data
  • 14. Intelligent eCommerce App: SwagStore + Receive personalized product recommendations based on ML algorithm Recommendation Engine
  • 15. Intelligent SwagStore: How We Built It SwagStore Google Cloud ML Trains and Tunes Model TensorFlow WALS Algorithm Google Cloud Endpoints Serves Recommendations Stitch Initiates Recommendations developer data scientist developer data engineer
  • 16. Google Cloud ML Placeholder
  • 17. Training Recommendation Model 1. install the model code 2. place data into your Cloud Storage Bucket 3. run training script When the training is finished, the model data is saved in a subdirectory named model under the job directory of the training task. This data consists of several arrays, all saved in numpy format ./mltrain.sh train gs://recserve_jfmlrecengine/swag_pageviews.csv --data-type web_views
  • 18. Tuning Recommendation Model Hyperparameter tuning optimizes your machine learning model for most accuracy Typically data scientists experimenting with various values, testing the resulting performance of the model, and then picking a combination of parameters with the best performance. But you can test every possible combination of parameters…. it would take a very very long time Each hyperparameter is passed as an argument to the hyperparameter tuning job on Cloud ML Engine. The model writes a TensorFlow summary with a special tag that's set to the metric that evaluates the quality of the model. This summary metric enables the search process of the Cloud ML Engine hyperparameter tuning service to rank the trials. ./mltrain.sh tune gs://recserve_jfmlrecengine/swag_pageviews.csv --data-type web_views
  • 19. Generate Recommendations model.py : generate_recommendations input user: row index of the user in the rating matrix items: list of indexes for items that the user has rated / viewed latent factors: row and column factors generated by training / tuning the model number of desired recommendations https://jfmlrecengine.appspot.com/recommendation ?userId=5448543647176335931&numRecs=6 {"articles": ["299824032", "299935287", "299865757", "299959410", "298157062", "299816215"] }
  • 20. Serving Recommendations with Stitch MongoDB Stitch send a HTTP GET request to Google Cloud Endpoint to obtain recommendation For user who is logged in Get list of product recommendation Update user profile with that list Service Integrations make it simple for your app to use leading third party services Functions let you build complex logic and orchestrate data between clients, services, and MongoDB with server-side JavaScript functions. Stitch scales precisely to meet your usage.
  • 23. Intelligent eCommerce App: SwagStore + Shop for products via chat interface AI Chatbot
  • 24. Intelligent SwagStore: How We Built It SwagStore Google DialogFlow: Intent, Entities, Webhooks Stitch - Intent Fulfilment Slack - Front End developer data scientist developer data engineer
  • 25. DialogFlow + Stitch Architecture Stitch HTTP Service Webhook Stitch Functions to retrieve products from MongoDB
  • 26. Me: “Can you help me find a jacket?” ChatBot: “What color would you like?” Me: “White, please” ChatBot: “I found you a white Egmont Jacket” DialogFlow: Rich and Natural Conversational Experiences Our ChatBot understands and responds to requests such as: Stitch Service Integration
  • 27. Enabling DialogFlow Fulfillment With Stitch Stitch security enabled by default
  • 28. Enabling DialogFlow Fulfillment With Stitch return item from SwagStore Catalog to DialogFlow { "fulfillmentText": "I found you a white Egmont Packable Jacket. Check it out here: https://mdb-swag-store.netlify.com/products/299824032" } perform $find given parameters requested by DialogFlow: product type and product color
  • 30. Stitch Makes this Easy Intelligent App Developers Data Scientists RELEASE DEFINE BUILD AGILE DATA PREP BUILD MODEL GET INSIGHT VIZ DEPLOY TRAIN/EVAL NEED NEW STITCH COLLATERAL
  • 31. Build. Plug In. Innovate Intelligent App RELEASE DEFINE BUILD AGILE
  • 33. Close you use this methodology to build an intelligent app → chances are you are already being tasked to do that as developers use stitch to consume services, like GCP or others you don’t need to learn NLP, or build from scratch finally get analytics to drive value, utilize your data scientist get your analytics to change to world, not just your app...
  • 34. Resources and Credits MongoDB Stitch: Google Cloud ML Tutorials: https://cloud.google.com/solutions/machine-learning/recommendation-system-tensorflow-train-cloud-ml-engine GitHub: https://github.com/GoogleCloudPlatform/tensorflow-recommendation-wals DialogFlow https://dialogflow.com/docs/getting-started
  • 36. Title and bullet content slide • Bullet level one • Bullet level two • Bullet level three
  • 37. Thesis (long) Analytics is a constant underachiever. Elusive, shiny and never delivers. Analytics has been positioned for decades as the next frontier that will help companies gain competitive advantage and drive the top line growth but it always seems to fall short. Generations of analytics solutions: BI (2000), dashboards (2005), data science (2010), machine learning (2015)… now AI (2017). Applications on the other hand provide real, measurable value. They have fundamentally changed how we do things. We interact with them daily and companies we buy products and services from run their business on applications. It’s visible, measureable, proven. Full stop. How can we make analytics more impactful? How can you make analytics finally deliver something meaningful the way applications already have? By embedding your analytics into something your customers use every day. Like your app. Enter intelligent apps. MongoDB can help you create intelligent apps where operational and analytic workloads merge for the benefit of end customer. MongoDB is creating tools and approaches that are native to your data and its shape. You can finally do something meaningful with the insight your data scientists find - use it to capture and delight your customers! So what: make your data science meaningful, make your developers and data scientists work together and make them both more productive; build more impactful and interesting applications, delight your customers
  • 38. abstract Intelligent apps are emerging as the next frontier in analytics and application development. Learn how to build intelligent apps on MongoDB powered by Google Cloud with TensorFlow for machine learning and DialogFlow for artificial intelligence. Get your developers and data scientists to finally work together to build applications that understand your customer, automate their tasks, and provide knowledge and decision support. enables data scientists to build and bring superior machine learning models to production. Google DialogFlow helps developers build natural and rich conversational experiences quickly and easily to enage customers in a new way.
  • 39. general feedback - dry run 1 show more code make it obvious: 1, 2,3 - especially around building the model talk about getting devs and data scientists to work together twiggle.com - check this out need to set intelligent apps in the context - forrester, g2crowd are talking about them, use examples of companies using AI… but maybe you are not a google, or an ebay - how do you make this easy ? use this methodology; don’t need to learn NLP, build from scratch
  • 40. Outline Setup: analytics contact underachiever/ apps change the world / data scientists are frustrated / both devs and data scientists cost $$$! building blocks: first you have ecommerce app then you have ecommerce app + rec engine then you enable you users to shop for products via chat then you push recommendations back to cloud ML how to we make this easy how to we get dev and data scientists to work together
  • 41. Title and bullet two content slide • Bullet level one • Bullet level two • Bullet level three • Bullet level one • Bullet level two • Bullet level three
  • 42. Short title with caption and photo or graphic slide A caption or a quote for a photo, logo, graphic, social medial screenshot, etc. can go here.
  • 43. Short title with caption and content slide A caption or subhead for the right content can go here. Content can be table, chart, diagram, smart object, photo or multimedia.
  • 45. Title and table slide Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 Column 1 Column 2 Column 3 Column 4 Column 5 Column 6
  • 46. Sample single column code slide { "_id" : 5, "line_items" : [ { "id": 123, "title": "USB Battery", "price": 15.0, "notify_when_ship": [{"name": "eliot", "phone": "123-456-7890"}], "shipped": true }, { "id": 512, "title": "Hip T-shirt", "price": 45.0, "shipped": false } ] }
  • 47. Sample two column code slide orders: { _id: 5, line_items : [ { id: 123, title : "USB Battery", price: 15.0 }, shipped: true { id: 512, title : "Hip T-shirt", price : 45.0, shipped: false } ], } db.orders.update( { _id: 5 }, { $mul: { "line_items.$[li].price": 0.8}}, {arrayFilters:[ {"li.shipped":{$ne:true}} ]} )
  • 48. Application Driver Query Router Query Router••• Query Router Query Router Query Router Query Router Query Router Query Router Query Router Query Router Query Router Query Router Query Router Query Router ••• Shard 1 Shard 2 Shard 2 Shard N
  • 49. Active/active data center Secondary – A Secondary – B Secondary – C Secondary – B Secondary – C Secondary – A Data Center – EastData Center – Central Arbiter – B Arbiter – CArbiter – A Data Center – West Primary – B Secondary – B Primary – A Primary – C Secondary – C Secondary – A
  • 50. Active/standby data center Data Center – West Primary – BPrimary – A Primary – C Secondary – B Secondary – C Secondary – A Data Center – East Secondary – B Secondary – CSecondary - A
  • 51. SPEAKER NAME Speaker title, company and handle
  • 52. SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle
  • 53. SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle
  • 54. SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle SPEAKER NAME Speaker title, Company Handle
  • 56. Title only with footer
  • 64. Icons