際際滷

際際滷Share a Scribd company logo
Neo4j + MongoDB
SF Graph Database Meetup
About
Developer Relations Engineer @Neo4j
william.lyon@neo4j.com
@lyonwj
lyonwj.com
William Lyon
Agenda
 Super brief overview of MongoDB
 Why MongoDB + Neo4j?
 Neo4j Doc Manager
 New community project
 Demo!
MongoDB
Document Database
 Document datamodel
 JSON-like documents (BSON)
 Ad hoc queries
 Replication / sharding
 Load balancing
 Capped collections
 Help with job queue
implementation
Why Neo4j + MongoDB?
Polyglot persistence
 Take advantage of features of each database technology
 http://martinfowler.com/bliki/PolyglotPersistence.html
 Native graph datamodel
 Index free adjacency
 Pattern matching queries
 Document datamodel
 Performant document reads / writes
 Aggregation (MapReduce)
Polyglot Persistence
http://www.jamesserra.com/archive/2015/07/what-is-polyglot-persistence/
Functionality Database type
Shopping Cart Rapid session
reads / writes
Key-value store
Orders / Product
Catalog
Frequent reads Document
Customer social
graph
Recommendation Graph
Neo4j + MongoDB = Connected Documents
What insights can we draw from connected documents?
 Recommendations
http://www.lyonwj.com/2015/05/28/content-recommendation-from-links-shared-on-twitter/
Neo4j Doc Manager
Mongo Connector
 Automatically sync documents from
MongoDB to Neo4j
 Convert BSON documents into graph
model
 Alpha version on Github - feedback
welcome!
https://github.com/neo4j-contrib/neo4j_doc_manager
Neo4j Doc Manager
Automatically sync documents from MongoDB to Neo4j
Neo4j Doc Manager
Converts BSON documents into property graph model
 Documents converted to property graph
model
 Based on structure of the document
Neo4j Doc Manager
Feedback welcome!
 Alpha version
https://github.com/neo4j-contrib/neo4j_doc_manager
Neo4j Doc Manager
Docker test environment
 Neo4j, MongoDB, neo4j-doc-manager
 Docker compose
 https://github.com/JoergM/neomongo
禽掘珂或

More Related Content

Neo4j + MongoDB - SF Graph Database Meetup Group Presentation