SlideShare a Scribd company logo
1 of 56
Building a System of Engagement
with MongoDB
{ Name: ‘Bryan Reinero’,
Title: ‘Developer Advocate’,
Twitter: ‘@blimpyacht’,
Email: ‘bryan@mongdb.com’ }
2
Systems of Engagement
• Real-Time
• Context-Aware
• Encourage
Interaction
• Embedded in
Business Systems
3
Systems of Engagement
• Context rich and User
Relevant Interactions
• Integrates data from many
systems
• Integrates Analytics
4
The Importance of Engagement
• 74% Consumer would respond positively to companies that
understand them
• 57% Would recommend the company
• 29% Would make additional purchases
2013 Experian study
5
• 84% Would walk away from a non-responsive company
• 45% from a company that contacted them when they had asked
not to
• 52% Would leave a company that tries to sell them something
they already said they weren't interested in
The Importance of Engagement
2013 Experian study
6
• 84% Would walk away from a non-responsive company
• 45% from a company that contacted them when they had asked
not to
• 52% Would leave a company that tries to sell them something
they already said they weren't interested in
The Importance of Engagement
How is the application of value to the user?
7
8
Department of Veterans Affairs
20+ million Veterans in the US today
Doctors need a single view of a patient’s health record.
What happens when a patient has to change their address?
9
Customer Single View
• Understand customer
relationships
• Improves customer experience
• Develops effective customer
marketing
• Improves product
Requirements
• High performance requirements
• Increasingly large datasets
• High Availability
11
Architecture
Systems of Engagement
DataServices
Systems of Record
Master Data
Raw Data
Integrated Data
…
ETL
record
record
record
12
Aggregating a Single View
Single customer
VIEW
13
Aggregating a Single View
Common Data
Source Metadata
Source Data A
Source Data B
14
Aggregating a Single View
Common Data
Source Metadata
Source Data A
Source Data B
{
_id: <hash>,
address: {
num: 860,
street: “Grove”,
city: “San Francisco”,
state: “CA”,
zip:
}
}
15
Aggregating a Single View
Common Data
Source Metadata
Source Data A
Source Data B
{
sources: [
{
source: “URI”,
updated: ISODate(),
},
…
]
}
16
Aggregating a Single View
Common Data
Source Metadata
Source Data A
Source Data B
Shopping Cart,
Purchase history,
Prescriptions,
Medical History,
17
Multiple Data Sources
• Wearable Devices
• Embedded Systems
• Internet of Things
The Point of Engagement
19
The Scavenger Hunt App
Users create
scavenger hunts by
“pinning” waypoints
20
The Checkpoint Document
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
21
The Checkpoint Document
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
db.checkpoints.ensureIndex(
timestamp: -1,
geometry: “2dsphere”
);
22
The Checkpoint Document
db.checkpoints.find(
{
date: {$gt: <10mins ago> }
geometry: {
$near:{
{ type : "Point" ,
coordinates :
[ -173, 40.7 ]
},
$maxDistance : 100 }
}});
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
23
The Scavenger Hunt App
Business Requirements
• Location Based
Targeting
• Enable Social
Interactions
• Recommendations
24
Waypoint
{ _id: ObjectId(),
name: "Doug’s Coffee",
desc: "The best brew",
offers: [
”Morning rush hour discount",
”Order ahead with our app",
”Start your digital frequent flyer
card"
],
"geometry": {
"type": "Point",
"coordinates": [125.6, 10.1] }
};
25
Waypoint
{ _id: ObjectId(),
name: "Doug’s Coffee",
desc: "The best brew",
offers: [
”Morning rush hour discount",
”Order ahead with our app",
”Start your digital frequent flyer
card"
],
"geometry": {
"type": "Point",
"coordinates": [125.6, 10.1] }
};
26
Waypoint
{ _id: ObjectId(),
name: "Doug’s Coffee",
desc: "The best brew",
offers: [
”Morning rush hour discount",
”Order ahead with our app",
”Start your digital frequent flyer
card"
],
"geometry": {
"type": "Point",
"coordinates": [125.6, 10.1] }
};
Geospacial Index:
ensureIndex(
{ geometry: “2dsphere” }
)
27
The Checkpoint Document
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
28
The Checkpoint Document
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
db.checkpoints.ensureIndex(
timestamp: -1,
geometry: “2dsphere”
);
29
The Checkpoint Document
db.checkpoints.find(
{
date: {$gt: <10mins ago> }
geometry: {
$near:{
{ type : "Point" ,
coordinates :
[ -173, 40.7 ]
},
$maxDistance : 100 }
}});
{
_id: ObjectId(),
user: UUID,
huntId: UUID,
timestamp: ISODate(),
geometry: {
type: "Point",
coordinates: [125.6, 10.1]
}
}
30
Geo Targeting
31
Geo Targeting
{
"type": "Polygon",
"coordinates" : [
[
[ -73.969581, 40.760331 ],
[ -73.974487, 40.762245 ],
[ -73.977692, 40.763598],
[ -73.979508, 40.761269 ],
[ -73.982364, 40.762358 ],
[ -73.983692, 40.760497 ],
[ -73.972821, 40.755861 ],
[ -73.969581, 40.760331 ]
]
]
} Defines a business service area
32
$geoIntersects
{
$geoIntersects: {
$geometry: {
"type": "Point",
"coordinates": [
-73.975010,
40.760071
]
}
}
}
33
Defining Service Areas
Data Driven Decisions
• Find users within a given area
• Intersections with multiple service areas
• Fraud detection
• Where are my competitors located
Social Interactions
35
Social Interactions
Requirements
• Allow users to follow one
another
• Allow users to exchange
messages
• Send users notifications
36
Social Interactions
Eratosthenes
Democritus
Hypatia
Shemp
Euripides
Graph models
Personal Relationships
Recommendation Engines
37
Social Interactions
Followers Collection
{ follower: ‘Shemp’, followed: ‘Euripides’},
{ follower:‘Shemp’, followed: ’Eratosthenes”},
{ follower: “Eratosthenes’, followed: ‘Shemp’ },
…
Eratosthenes
Democritus
Hypatia
Shemp
Euripides
38
Social Interactions
Eratosthenes
Democritus
Hypatia
Shemp
Euripides
Followers Collection
{ follower: ‘Shemp’, followed: ‘Euripides’},
{ follower:‘Shemp’, followed: ’Eratosthenes”},
{ follower: “Eratosthenes’, followed: ‘Shemp’ },
…
! (Euripides -> Shemp )
39
Social Interactions
db.followers.find( { follower:‘Shemp’ } );
Followers Collection
{ follower: ‘Shemp’, followed: ‘Euripides’},
{ follower:‘Shemp’, followed: ’Eratosthenes”},
{ follower: “Eratosthenes’, followed: ‘Shemp’ },
…
Notifications
41
Personal Timeline / Hotlist
{
_id: UUID,
user: ”Democritus",
hotList" : [
{
message: "New scavenger hunt tomorrow!",
url: "http://bit.ly/1hKn9ff",
date" : ISODate()
},
{
message: "Get 50% off at Toga City",
url: "http://bit.ly/1KnlFHQ",
date: ISODate()
}
],
atime: ISODate("20150313T04:38:43.606Z")
}
42
Personal Timeline / Hotlist
Notifications of highest
user relevance
{
_id: UUID,
user: ”Democritus",
hotList" : [
{
message: "New scavenger hunt tomorrow!",
url: "http://bit.ly/1hKn9ff",
date" : ISODate()
},
{
message: "Get 50% off at Toga City",
url: "http://bit.ly/1KnlFHQ",
date: ISODate()
}
],
atime: ISODate("20150313T04:38:43.606Z")
}
43
Write to Bucket
Parameters
• User
db.user.update(
{"user" : "Democritus"},
{$push: {
hotList: {
$each:
[
{ o: 10, <MESSAGE> },
{ o: 7, <MESSAGE> },
…
],
$sort: { o: -1 },
$slice: 50 }
}}
);
44
Write to Bucket
Parameters
• user
• $push append to end of hotList array
db.user.update(
{"user" : "Democritus"},
{$push: {
hotList: {
$each:
[
{ o: 10, <MESSAGE> },
{ o: 7, <MESSAGE> },
…
],
$sort: { o: -1 },
$slice: 50 }
}}
);
45
Write to Bucket
Parameters
• user
• $push append to end of hotList array
• $each list of message elements
db.user.update(
{"user" : "Democritus"},
{$push: {
hotList: {
$each:
[
{ o: 10, <MESSAGE> },
{ o: 7, <MESSAGE> },
…
],
$sort: { o: -1 },
$slice: 50 }
}}
);
46
Write to Bucket
Parameters
• user
• $push append to end of hotList array
• $each message in array
• $sort the resulting array in descending order
db.user.update(
{"user" : "Democritus"},
{$push: {
hotList: {
$each:
[
{ o: 10, <MESSAGE> },
{ o: 7, <MESSAGE> },
…
],
$sort: { o: -1 },
$slice: 50 }
}}
);
47
Write to Bucket
Parameters
• user
• $push append to end of hotList array
• $each message in array
• $sort the resulting array in descending order
• $slice include only the first 50 elements
db.user.update(
{"user" : "Democritus"},
{$push: {
hotList: {
$each:
[
{ o: 10, <MESSAGE> },
{ o: 7, <MESSAGE> },
…
],
$sort: { o: -1 },
$slice: 50 }
}}
);
Analytics
49
Analytics
• Behavioral analytics
• Segmentation
• Fraud detection
• Prediction
• Pricing analytics
• Sales analytics
50
Analytics
Systems of Engagement
DataServices
Data Processing
Integration, Analytics, etc.
Systems of Record
Master Data
Raw Data
Integrated Data
…
ETL
record
record
record
51
MongoDB as an Operational Store
Application Server
Other DBMS
& Legacy systems
Data Capture
53
Capture Data Changes
Systems of Engagement
DataServices
Data Processing
Integration, Analytics, etc.
Systems of Record
Master Data
Raw Data
Integrated Data
…
ETL
Bus
Apache Kafka
record
record
record
54
Many Complexities to Tackle
• Data modeling
• Data Extraction (ETL)
• Change Data Capture (CDC)
• Data Governance
• Data Lineage
• Security
55
How is the application of
value to the user?
Thanks!
{ Name: ‘Bryan Reinero’,
Title: ‘Developer Advocate’,
Twitter: ‘@blimpyacht’,
Email: ‘bryan@mongdb.com’ }

More Related Content

What's hot

Mongo db문서의생성,갱신,삭제
Mongo db문서의생성,갱신,삭제Mongo db문서의생성,갱신,삭제
Mongo db문서의생성,갱신,삭제홍준 김
 
MongoD Essentials
MongoD EssentialsMongoD Essentials
MongoD Essentialszahid-mian
 
Back to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationBack to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationMongoDB
 
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...MongoDB
 
Basic crud operation
Basic crud operationBasic crud operation
Basic crud operationzarigatongy
 
How Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and AnalyticsHow Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and Analyticsmattinsler
 
Di web tech mail (no subject)
Di web tech mail   (no subject)Di web tech mail   (no subject)
Di web tech mail (no subject)shubhamvcs
 
First app online conf
First app   online confFirst app   online conf
First app online confMongoDB
 
Hi5 Opensocial Code Lab Presentation
Hi5 Opensocial Code Lab PresentationHi5 Opensocial Code Lab Presentation
Hi5 Opensocial Code Lab Presentationplindner
 
Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Avast
 
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...MongoDB
 
Modeling for Performance
Modeling for PerformanceModeling for Performance
Modeling for PerformanceMongoDB
 
Data Modeling for Performance
Data Modeling for PerformanceData Modeling for Performance
Data Modeling for PerformanceMichael Dwan
 
Desenvolvimento web com Ruby on Rails (parte 5)
Desenvolvimento web com Ruby on Rails (parte 5)Desenvolvimento web com Ruby on Rails (parte 5)
Desenvolvimento web com Ruby on Rails (parte 5)Joao Lucas Santana
 
Building a Cross Channel Content Delivery Platform with MongoDB
Building a Cross Channel Content Delivery Platform with MongoDBBuilding a Cross Channel Content Delivery Platform with MongoDB
Building a Cross Channel Content Delivery Platform with MongoDBMongoDB
 
Advanced Document Modeling Techniques from a High-Scale Commerce Platform
Advanced Document Modeling Techniques from a High-Scale Commerce PlatformAdvanced Document Modeling Techniques from a High-Scale Commerce Platform
Advanced Document Modeling Techniques from a High-Scale Commerce PlatformMongoDB
 
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...MongoDB
 

What's hot (19)

Letgo Data Platform: A global overview
Letgo Data Platform: A global overviewLetgo Data Platform: A global overview
Letgo Data Platform: A global overview
 
Mongo db문서의생성,갱신,삭제
Mongo db문서의생성,갱신,삭제Mongo db문서의생성,갱신,삭제
Mongo db문서의생성,갱신,삭제
 
MongoD Essentials
MongoD EssentialsMongoD Essentials
MongoD Essentials
 
Back to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationBack to Basics: My First MongoDB Application
Back to Basics: My First MongoDB Application
 
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
MongoDB .local Munich 2019: Still Haven't Found What You Are Looking For? Use...
 
Basic crud operation
Basic crud operationBasic crud operation
Basic crud operation
 
Talk MongoDB - Amil
Talk MongoDB - AmilTalk MongoDB - Amil
Talk MongoDB - Amil
 
How Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and AnalyticsHow Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and Analytics
 
Di web tech mail (no subject)
Di web tech mail   (no subject)Di web tech mail   (no subject)
Di web tech mail (no subject)
 
First app online conf
First app   online confFirst app   online conf
First app online conf
 
Hi5 Opensocial Code Lab Presentation
Hi5 Opensocial Code Lab PresentationHi5 Opensocial Code Lab Presentation
Hi5 Opensocial Code Lab Presentation
 
Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)
 
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...
How to Avoid Common Data Visualization Pitfalls and Being Led Astray By Your ...
 
Modeling for Performance
Modeling for PerformanceModeling for Performance
Modeling for Performance
 
Data Modeling for Performance
Data Modeling for PerformanceData Modeling for Performance
Data Modeling for Performance
 
Desenvolvimento web com Ruby on Rails (parte 5)
Desenvolvimento web com Ruby on Rails (parte 5)Desenvolvimento web com Ruby on Rails (parte 5)
Desenvolvimento web com Ruby on Rails (parte 5)
 
Building a Cross Channel Content Delivery Platform with MongoDB
Building a Cross Channel Content Delivery Platform with MongoDBBuilding a Cross Channel Content Delivery Platform with MongoDB
Building a Cross Channel Content Delivery Platform with MongoDB
 
Advanced Document Modeling Techniques from a High-Scale Commerce Platform
Advanced Document Modeling Techniques from a High-Scale Commerce PlatformAdvanced Document Modeling Techniques from a High-Scale Commerce Platform
Advanced Document Modeling Techniques from a High-Scale Commerce Platform
 
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
MongoDB World 2018: Time for a Change Stream - Using MongoDB Change Streams t...
 

Viewers also liked

Marketing, Technology, and the Empowered Customer
Marketing, Technology, and the Empowered CustomerMarketing, Technology, and the Empowered Customer
Marketing, Technology, and the Empowered CustomerJay Henderson
 
Maintainable code
Maintainable codeMaintainable code
Maintainable codeRiverGlide
 
Business Drivers of SDN by Paul Wiefels, Chasm Group
Business Drivers of SDN by Paul Wiefels, Chasm GroupBusiness Drivers of SDN by Paul Wiefels, Chasm Group
Business Drivers of SDN by Paul Wiefels, Chasm GroupSDxCentral
 
Salesforce External Objects for Big Data
Salesforce External Objects for Big DataSalesforce External Objects for Big Data
Salesforce External Objects for Big DataSumit Sarkar
 
HILTON CRM CASE STUDY
HILTON CRM CASE STUDYHILTON CRM CASE STUDY
HILTON CRM CASE STUDYYingyuan Deng
 
Ten Disruptions in HR Technology for 2015: Ignore At Your Peril
Ten Disruptions in HR Technology for 2015:  Ignore At Your PerilTen Disruptions in HR Technology for 2015:  Ignore At Your Peril
Ten Disruptions in HR Technology for 2015: Ignore At Your PerilJosh Bersin
 

Viewers also liked (6)

Marketing, Technology, and the Empowered Customer
Marketing, Technology, and the Empowered CustomerMarketing, Technology, and the Empowered Customer
Marketing, Technology, and the Empowered Customer
 
Maintainable code
Maintainable codeMaintainable code
Maintainable code
 
Business Drivers of SDN by Paul Wiefels, Chasm Group
Business Drivers of SDN by Paul Wiefels, Chasm GroupBusiness Drivers of SDN by Paul Wiefels, Chasm Group
Business Drivers of SDN by Paul Wiefels, Chasm Group
 
Salesforce External Objects for Big Data
Salesforce External Objects for Big DataSalesforce External Objects for Big Data
Salesforce External Objects for Big Data
 
HILTON CRM CASE STUDY
HILTON CRM CASE STUDYHILTON CRM CASE STUDY
HILTON CRM CASE STUDY
 
Ten Disruptions in HR Technology for 2015: Ignore At Your Peril
Ten Disruptions in HR Technology for 2015:  Ignore At Your PerilTen Disruptions in HR Technology for 2015:  Ignore At Your Peril
Ten Disruptions in HR Technology for 2015: Ignore At Your Peril
 

Similar to Powering Systems of Engagement

Systems of engagement
Systems of engagementSystems of engagement
Systems of engagementBryan Reinero
 
How to leverage what's new in MongoDB 3.6
How to leverage what's new in MongoDB 3.6How to leverage what's new in MongoDB 3.6
How to leverage what's new in MongoDB 3.6Maxime Beugnet
 
User Data Management with MongoDB
User Data Management with MongoDB User Data Management with MongoDB
User Data Management with MongoDB MongoDB
 
Evolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchEvolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchMongoDB
 
Creating a Single View Part 1: Overview and Data Analysis
Creating a Single View Part 1: Overview and Data AnalysisCreating a Single View Part 1: Overview and Data Analysis
Creating a Single View Part 1: Overview and Data AnalysisMongoDB
 
MongoDB Evenings Dallas: What's the Scoop on MongoDB & Hadoop
MongoDB Evenings Dallas: What's the Scoop on MongoDB & HadoopMongoDB Evenings Dallas: What's the Scoop on MongoDB & Hadoop
MongoDB Evenings Dallas: What's the Scoop on MongoDB & HadoopMongoDB
 
Big Data Analytics 1: Driving Personalized Experiences Using Customer Profiles
Big Data Analytics 1: Driving Personalized Experiences Using Customer ProfilesBig Data Analytics 1: Driving Personalized Experiences Using Customer Profiles
Big Data Analytics 1: Driving Personalized Experiences Using Customer ProfilesMongoDB
 
Mongo db 101 dc group
Mongo db 101 dc groupMongo db 101 dc group
Mongo db 101 dc groupJohn Ragan
 
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.GeeksLab Odessa
 
Practical MongoDB
Practical MongoDBPractical MongoDB
Practical MongoDBWill Button
 
Retail Reference Architecture Part 2: Real-Time, Geo Distributed Inventory
Retail Reference Architecture Part 2: Real-Time, Geo Distributed InventoryRetail Reference Architecture Part 2: Real-Time, Geo Distributed Inventory
Retail Reference Architecture Part 2: Real-Time, Geo Distributed InventoryMongoDB
 
Building a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and JavaBuilding a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and Javaantoinegirbal
 
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...MongoDB
 
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...MongoDB
 
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...MongoDB
 
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...MongoDB
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB
 
Using MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseUsing MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseMongoDB
 
Analytics with MongoDB Aggregation Framework and Hadoop Connector
Analytics with MongoDB Aggregation Framework and Hadoop ConnectorAnalytics with MongoDB Aggregation Framework and Hadoop Connector
Analytics with MongoDB Aggregation Framework and Hadoop ConnectorHenrik Ingo
 
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"South Tyrol Free Software Conference
 

Similar to Powering Systems of Engagement (20)

Systems of engagement
Systems of engagementSystems of engagement
Systems of engagement
 
How to leverage what's new in MongoDB 3.6
How to leverage what's new in MongoDB 3.6How to leverage what's new in MongoDB 3.6
How to leverage what's new in MongoDB 3.6
 
User Data Management with MongoDB
User Data Management with MongoDB User Data Management with MongoDB
User Data Management with MongoDB
 
Evolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchEvolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB Stitch
 
Creating a Single View Part 1: Overview and Data Analysis
Creating a Single View Part 1: Overview and Data AnalysisCreating a Single View Part 1: Overview and Data Analysis
Creating a Single View Part 1: Overview and Data Analysis
 
MongoDB Evenings Dallas: What's the Scoop on MongoDB & Hadoop
MongoDB Evenings Dallas: What's the Scoop on MongoDB & HadoopMongoDB Evenings Dallas: What's the Scoop on MongoDB & Hadoop
MongoDB Evenings Dallas: What's the Scoop on MongoDB & Hadoop
 
Big Data Analytics 1: Driving Personalized Experiences Using Customer Profiles
Big Data Analytics 1: Driving Personalized Experiences Using Customer ProfilesBig Data Analytics 1: Driving Personalized Experiences Using Customer Profiles
Big Data Analytics 1: Driving Personalized Experiences Using Customer Profiles
 
Mongo db 101 dc group
Mongo db 101 dc groupMongo db 101 dc group
Mongo db 101 dc group
 
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
 
Practical MongoDB
Practical MongoDBPractical MongoDB
Practical MongoDB
 
Retail Reference Architecture Part 2: Real-Time, Geo Distributed Inventory
Retail Reference Architecture Part 2: Real-Time, Geo Distributed InventoryRetail Reference Architecture Part 2: Real-Time, Geo Distributed Inventory
Retail Reference Architecture Part 2: Real-Time, Geo Distributed Inventory
 
Building a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and JavaBuilding a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and Java
 
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
 
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...
MongoDB .local Chicago 2019: Best Practices for Working with IoT and Time-ser...
 
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...
MongoDB World 2019: Building an Efficient and Performant Data Model: Real Wor...
 
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...
MongoDB .local Munich 2019: Best Practices for Working with IoT and Time-seri...
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
 
Using MongoDB As a Tick Database
Using MongoDB As a Tick DatabaseUsing MongoDB As a Tick Database
Using MongoDB As a Tick Database
 
Analytics with MongoDB Aggregation Framework and Hadoop Connector
Analytics with MongoDB Aggregation Framework and Hadoop ConnectorAnalytics with MongoDB Aggregation Framework and Hadoop Connector
Analytics with MongoDB Aggregation Framework and Hadoop Connector
 
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"
SFScon17 - Patrick Puecher: "Exploring data with Elasticsearch and Kibana"
 

More from MongoDB

MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB
 
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 MongoDB SoCal 2020: MongoDB Atlas Jump Start MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB SoCal 2020: MongoDB Atlas Jump StartMongoDB
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
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 .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
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 .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
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 .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
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 .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
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 .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB
 
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDBMongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDBMongoDB
 

More from MongoDB (20)

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

Recently uploaded

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Recently uploaded (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Powering Systems of Engagement

  • 1. Building a System of Engagement with MongoDB { Name: ‘Bryan Reinero’, Title: ‘Developer Advocate’, Twitter: ‘@blimpyacht’, Email: ‘bryan@mongdb.com’ }
  • 2. 2 Systems of Engagement • Real-Time • Context-Aware • Encourage Interaction • Embedded in Business Systems
  • 3. 3 Systems of Engagement • Context rich and User Relevant Interactions • Integrates data from many systems • Integrates Analytics
  • 4. 4 The Importance of Engagement • 74% Consumer would respond positively to companies that understand them • 57% Would recommend the company • 29% Would make additional purchases 2013 Experian study
  • 5. 5 • 84% Would walk away from a non-responsive company • 45% from a company that contacted them when they had asked not to • 52% Would leave a company that tries to sell them something they already said they weren't interested in The Importance of Engagement 2013 Experian study
  • 6. 6 • 84% Would walk away from a non-responsive company • 45% from a company that contacted them when they had asked not to • 52% Would leave a company that tries to sell them something they already said they weren't interested in The Importance of Engagement How is the application of value to the user?
  • 7. 7
  • 8. 8 Department of Veterans Affairs 20+ million Veterans in the US today Doctors need a single view of a patient’s health record. What happens when a patient has to change their address?
  • 9. 9 Customer Single View • Understand customer relationships • Improves customer experience • Develops effective customer marketing • Improves product
  • 10. Requirements • High performance requirements • Increasingly large datasets • High Availability
  • 11. 11 Architecture Systems of Engagement DataServices Systems of Record Master Data Raw Data Integrated Data … ETL record record record
  • 12. 12 Aggregating a Single View Single customer VIEW
  • 13. 13 Aggregating a Single View Common Data Source Metadata Source Data A Source Data B
  • 14. 14 Aggregating a Single View Common Data Source Metadata Source Data A Source Data B { _id: <hash>, address: { num: 860, street: “Grove”, city: “San Francisco”, state: “CA”, zip: } }
  • 15. 15 Aggregating a Single View Common Data Source Metadata Source Data A Source Data B { sources: [ { source: “URI”, updated: ISODate(), }, … ] }
  • 16. 16 Aggregating a Single View Common Data Source Metadata Source Data A Source Data B Shopping Cart, Purchase history, Prescriptions, Medical History,
  • 17. 17 Multiple Data Sources • Wearable Devices • Embedded Systems • Internet of Things
  • 18. The Point of Engagement
  • 19. 19 The Scavenger Hunt App Users create scavenger hunts by “pinning” waypoints
  • 20. 20 The Checkpoint Document { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } }
  • 21. 21 The Checkpoint Document { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } } db.checkpoints.ensureIndex( timestamp: -1, geometry: “2dsphere” );
  • 22. 22 The Checkpoint Document db.checkpoints.find( { date: {$gt: <10mins ago> } geometry: { $near:{ { type : "Point" , coordinates : [ -173, 40.7 ] }, $maxDistance : 100 } }}); { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } }
  • 23. 23 The Scavenger Hunt App Business Requirements • Location Based Targeting • Enable Social Interactions • Recommendations
  • 24. 24 Waypoint { _id: ObjectId(), name: "Doug’s Coffee", desc: "The best brew", offers: [ ”Morning rush hour discount", ”Order ahead with our app", ”Start your digital frequent flyer card" ], "geometry": { "type": "Point", "coordinates": [125.6, 10.1] } };
  • 25. 25 Waypoint { _id: ObjectId(), name: "Doug’s Coffee", desc: "The best brew", offers: [ ”Morning rush hour discount", ”Order ahead with our app", ”Start your digital frequent flyer card" ], "geometry": { "type": "Point", "coordinates": [125.6, 10.1] } };
  • 26. 26 Waypoint { _id: ObjectId(), name: "Doug’s Coffee", desc: "The best brew", offers: [ ”Morning rush hour discount", ”Order ahead with our app", ”Start your digital frequent flyer card" ], "geometry": { "type": "Point", "coordinates": [125.6, 10.1] } }; Geospacial Index: ensureIndex( { geometry: “2dsphere” } )
  • 27. 27 The Checkpoint Document { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } }
  • 28. 28 The Checkpoint Document { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } } db.checkpoints.ensureIndex( timestamp: -1, geometry: “2dsphere” );
  • 29. 29 The Checkpoint Document db.checkpoints.find( { date: {$gt: <10mins ago> } geometry: { $near:{ { type : "Point" , coordinates : [ -173, 40.7 ] }, $maxDistance : 100 } }}); { _id: ObjectId(), user: UUID, huntId: UUID, timestamp: ISODate(), geometry: { type: "Point", coordinates: [125.6, 10.1] } }
  • 31. 31 Geo Targeting { "type": "Polygon", "coordinates" : [ [ [ -73.969581, 40.760331 ], [ -73.974487, 40.762245 ], [ -73.977692, 40.763598], [ -73.979508, 40.761269 ], [ -73.982364, 40.762358 ], [ -73.983692, 40.760497 ], [ -73.972821, 40.755861 ], [ -73.969581, 40.760331 ] ] ] } Defines a business service area
  • 32. 32 $geoIntersects { $geoIntersects: { $geometry: { "type": "Point", "coordinates": [ -73.975010, 40.760071 ] } } }
  • 33. 33 Defining Service Areas Data Driven Decisions • Find users within a given area • Intersections with multiple service areas • Fraud detection • Where are my competitors located
  • 35. 35 Social Interactions Requirements • Allow users to follow one another • Allow users to exchange messages • Send users notifications
  • 37. 37 Social Interactions Followers Collection { follower: ‘Shemp’, followed: ‘Euripides’}, { follower:‘Shemp’, followed: ’Eratosthenes”}, { follower: “Eratosthenes’, followed: ‘Shemp’ }, … Eratosthenes Democritus Hypatia Shemp Euripides
  • 38. 38 Social Interactions Eratosthenes Democritus Hypatia Shemp Euripides Followers Collection { follower: ‘Shemp’, followed: ‘Euripides’}, { follower:‘Shemp’, followed: ’Eratosthenes”}, { follower: “Eratosthenes’, followed: ‘Shemp’ }, … ! (Euripides -> Shemp )
  • 39. 39 Social Interactions db.followers.find( { follower:‘Shemp’ } ); Followers Collection { follower: ‘Shemp’, followed: ‘Euripides’}, { follower:‘Shemp’, followed: ’Eratosthenes”}, { follower: “Eratosthenes’, followed: ‘Shemp’ }, …
  • 41. 41 Personal Timeline / Hotlist { _id: UUID, user: ”Democritus", hotList" : [ { message: "New scavenger hunt tomorrow!", url: "http://bit.ly/1hKn9ff", date" : ISODate() }, { message: "Get 50% off at Toga City", url: "http://bit.ly/1KnlFHQ", date: ISODate() } ], atime: ISODate("20150313T04:38:43.606Z") }
  • 42. 42 Personal Timeline / Hotlist Notifications of highest user relevance { _id: UUID, user: ”Democritus", hotList" : [ { message: "New scavenger hunt tomorrow!", url: "http://bit.ly/1hKn9ff", date" : ISODate() }, { message: "Get 50% off at Toga City", url: "http://bit.ly/1KnlFHQ", date: ISODate() } ], atime: ISODate("20150313T04:38:43.606Z") }
  • 43. 43 Write to Bucket Parameters • User db.user.update( {"user" : "Democritus"}, {$push: { hotList: { $each: [ { o: 10, <MESSAGE> }, { o: 7, <MESSAGE> }, … ], $sort: { o: -1 }, $slice: 50 } }} );
  • 44. 44 Write to Bucket Parameters • user • $push append to end of hotList array db.user.update( {"user" : "Democritus"}, {$push: { hotList: { $each: [ { o: 10, <MESSAGE> }, { o: 7, <MESSAGE> }, … ], $sort: { o: -1 }, $slice: 50 } }} );
  • 45. 45 Write to Bucket Parameters • user • $push append to end of hotList array • $each list of message elements db.user.update( {"user" : "Democritus"}, {$push: { hotList: { $each: [ { o: 10, <MESSAGE> }, { o: 7, <MESSAGE> }, … ], $sort: { o: -1 }, $slice: 50 } }} );
  • 46. 46 Write to Bucket Parameters • user • $push append to end of hotList array • $each message in array • $sort the resulting array in descending order db.user.update( {"user" : "Democritus"}, {$push: { hotList: { $each: [ { o: 10, <MESSAGE> }, { o: 7, <MESSAGE> }, … ], $sort: { o: -1 }, $slice: 50 } }} );
  • 47. 47 Write to Bucket Parameters • user • $push append to end of hotList array • $each message in array • $sort the resulting array in descending order • $slice include only the first 50 elements db.user.update( {"user" : "Democritus"}, {$push: { hotList: { $each: [ { o: 10, <MESSAGE> }, { o: 7, <MESSAGE> }, … ], $sort: { o: -1 }, $slice: 50 } }} );
  • 49. 49 Analytics • Behavioral analytics • Segmentation • Fraud detection • Prediction • Pricing analytics • Sales analytics
  • 50. 50 Analytics Systems of Engagement DataServices Data Processing Integration, Analytics, etc. Systems of Record Master Data Raw Data Integrated Data … ETL record record record
  • 51. 51 MongoDB as an Operational Store Application Server Other DBMS & Legacy systems
  • 53. 53 Capture Data Changes Systems of Engagement DataServices Data Processing Integration, Analytics, etc. Systems of Record Master Data Raw Data Integrated Data … ETL Bus Apache Kafka record record record
  • 54. 54 Many Complexities to Tackle • Data modeling • Data Extraction (ETL) • Change Data Capture (CDC) • Data Governance • Data Lineage • Security
  • 55. 55 How is the application of value to the user?
  • 56. Thanks! { Name: ‘Bryan Reinero’, Title: ‘Developer Advocate’, Twitter: ‘@blimpyacht’, Email: ‘bryan@mongdb.com’ }

Editor's Notes

  1. As apposed to
  2. Applications must be targeted, timely and engaging A product that is of no relevance will likely infuriate them
  3. 2013 Experian study http://www.experian.co.uk/blogs/insights/2013/09/impact-of-having-an-effective-single-customer-view-on-consumer-behaviour/
  4. 2013 Experian study http://www.experian.co.uk/blogs/insights/2013/09/impact-of-having-an-effective-single-customer-view-on-consumer-behaviour/
  5. Source http://www.experian.co.uk/assets/about-us/white-papers/single-customer-view-whitepaper.pdf
  6. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  7. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  8. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  9. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  10. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  11. So let's add a component that will propagate changes from the system of engagement back to the systems of record In addition to the previous components we put in place for the single view, we need some sort of message processing component to receive and publish data changes back to the source systems. For this example, we will use Apache Kafka as it is pretty commonly used these days. We'll show changing the integrated data in the system of engagement database and propagating that back to the systems of record
  12. Graph patterns are also great for recommendation engines