Graph Databases
Graph Databases
Databases
Graph Databases
• Data Model:
• Nodes and Relationships
• Examples:
• Neo4j, OrientDB, InfiniteGraph,
AllegroGraph
Graph Databases: Pros
and Cons
• Pros:
• Powerful data model, as general as RDBMS
• Connected data locally indexed
• Easy to query
• Cons
• Sharding ( lots of people working on this)
• Scales UP reasonably well
• Requires rewiring your brain
What are graphs good for?
• Recommendations
• Business intelligence
• Social computing
• Geospatial
• Systems management
• Web of things
• Genealogy
• Time series data
• Product catalogue
• Web analytics
• Scientific computing (especially bioinformatics)
• Indexing your slow RDBMS
• And much more!
What is a Graph?
• Undirected Graph
• Directed Graph
• Pseudo Graph
• Multi Graph
• Hyper Graph
More Kinds of Graphs
• Weighted Graph
• Labeled Graph
• Property Graph
What is a Graph
Database?
• A database with an explicit graph
structure
• Each node knows its adjacent nodes
• As the number of nodes increases, the
cost of a local step (or hop) remains the
same
• Plus an Index for lookups
Relational Databases
Graph Databases
Neo4j Tips