Graph Databases
Introduction & Concepts

Vinoth Kannan
vinoth.kannan@widas.de
1
Agenda
Overview of NoSQL
What is a Graph Database
Concept
Some Use Cases
Conclusion
2
Overview of NoSQL

NoSQL
Not Only SQL

3
Types of NoSQL

Key Value Stores
Column Family
Document Databases
Graph Databases

4
Key-Value Store
Types of NoSQL

Based on Amazon’s Dynamo platform: Highly
Available Key-Value Store
Data Model:
Global key...
Column Family
NoSQL Types

Based on BigTable: Google’s Distributed Storage
System for Structured Data
Data Model:
A big ta...
Document Databases
NoSQL Types

Based on Lotus Notes
Data Model:
A collection of documents
A document is a key value colle...
Graph Databases
NoSQL Types

Based on Euler & Graph Theory
Data Model:
Nodes and Relationships

Examples:
Neo4j, OrientDB,...
NoSQL Performace
Complexity vs Size

………………..

Graph
Store

Data Complexity

Document
Store
CF Store
K-V
Store

RDBMS

Dat...
What is a Graph?
An abstract representation of a set of objects where
some pairs are connected by links.

Name

Object (Ve...
Different Types of Graphs
Graph Type
Undirected Graph

Directed Graph

Pseudo Graph

Multi Graph

Hyper Graph

Diagram
Different Types of Graphs
Graph Type

Weighted Graph

Labeled Graph

Property Graph

Diagram
What is a Graph Database?
A database with an explicit graph structure
Each node knows its adjacent nodes
Even as the numbe...
Compared to Relational Databases

Optimized for aggregation

Optimized for connections
Compared to Key Value Stores

Optimized for simple look-ups

Optimized for traversing connected
data
Compared to Key Value Stores

Optimized for “trees” of data

Optimized for seeing the forest and
the trees, and the branch...
Friends Recommendation
Wondered How ?

17
Graph Databases
Basic Concepts – Social Data

Name= “Elena”
Name= “Vinoth”
City= “PF “

Name= “Emanuel”

Name= “Joachim”

...
Graph Search Feature of FB
Wondered How ?

19
Graph Databases
Basic Concepts – Connection based

Name= “Elena”
Name= “Vinoth”
City= “PF

”

Name= “WIDAS”

3
1

6
FRIEND...
Graph Databases
Basic Concepts – Spatial Data
Name= “Stuttgart Hbf”
Lat = 48.460
Lon = 9.1040

Name= “WIDAS”
Lat = 48.510
...
Power of Graph Database

Social Data

+
Spatial Data

22
Graph Databases
Basic Concepts – Social and Spatial Data
Name= “Stuttgart”
Lat = 41.000
Lon = 40.840

Name= “WIDAS”
Lat = ...
Some Use Cases
Highly connected data (social networks)
Recommendations (e-commerce)
Path Finding (how do I know you?)
Anam...
FDS System with GraphDB

Name= “Vinoth”
IBAN= “DE1234

Name= “Xing Lee”
Country = “China”
IBAN = “XXXXXX”

”

Name= “ATM@R...
Thank you!
Upcoming SlideShare
Loading in...5
×

Graph databases

459

Published on

My presentation about introduction to graph database.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
459
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • An undirected graph is one in which edges have no orientation. The edge (a, b) is identical to the edge (b, a).A directed graph or digraph is an ordered pair D = (V, A)A pseudo graph is a graph with loopsA multi graph allows for multiple edges between nodesA hyper graph allows an edge to join more than two nodes
  • An undirected graph is one in which edges have no orientation. The edge (a, b) is identical to the edge (b, a).A directed graph or digraph is an ordered pair D = (V, A)A pseudo graph is a graph with loopsA multi graph allows for multiple edges between nodesA hyper graph allows an edge to join more than two nodes
  • Graph databases

    1. 1. Graph Databases Introduction & Concepts Vinoth Kannan vinoth.kannan@widas.de 1
    2. 2. Agenda Overview of NoSQL What is a Graph Database Concept Some Use Cases Conclusion 2
    3. 3. Overview of NoSQL NoSQL Not Only SQL 3
    4. 4. Types of NoSQL Key Value Stores Column Family Document Databases Graph Databases 4
    5. 5. Key-Value Store Types of NoSQL Based on Amazon’s Dynamo platform: Highly Available Key-Value Store Data Model: Global key-value mapping Big scalable HashMap Highly fault tolerant Examples: Redis, Riak, Voldemort, Tokyo 5
    6. 6. Column Family NoSQL Types Based on BigTable: Google’s Distributed Storage System for Structured Data Data Model: A big table, with column families Map Reduce for querying/processing Every row can have its own Schema Examples: HBase, HyperTable, Cassandra 6
    7. 7. Document Databases NoSQL Types Based on Lotus Notes Data Model: A collection of documents A document is a key value collection Index-centric, lots of map-reduce Examples: CouchDB, MongoDB 7
    8. 8. Graph Databases NoSQL Types Based on Euler & Graph Theory Data Model: Nodes and Relationships Examples: Neo4j, OrientDB, InfiniteGraph, AllegroGraph, Titan 8
    9. 9. NoSQL Performace Complexity vs Size ……………….. Graph Store Data Complexity Document Store CF Store K-V Store RDBMS Data Size 9
    10. 10. What is a Graph? An abstract representation of a set of objects where some pairs are connected by links. Name Object (Vertex, Node) Link (Edge, Arc, Relationship)
    11. 11. Different Types of Graphs Graph Type Undirected Graph Directed Graph Pseudo Graph Multi Graph Hyper Graph Diagram
    12. 12. Different Types of Graphs Graph Type Weighted Graph Labeled Graph Property Graph Diagram
    13. 13. What is a Graph Database? A database with an explicit graph structure Each node knows its adjacent nodes Even as the number of nodes increases, the cost of a local step (or hop) remains the same Plus an Index for lookups Transactional based
    14. 14. Compared to Relational Databases Optimized for aggregation Optimized for connections
    15. 15. Compared to Key Value Stores Optimized for simple look-ups Optimized for traversing connected data
    16. 16. Compared to Key Value Stores Optimized for “trees” of data Optimized for seeing the forest and the trees, and the branches, and the trunks
    17. 17. Friends Recommendation Wondered How ? 17
    18. 18. Graph Databases Basic Concepts – Social Data Name= “Elena” Name= “Vinoth” City= “PF “ Name= “Emanuel” Name= “Joachim” 3 FRIEND 1 6 12 FRIEND RELATED Since : 2012 2 Name= “Thomas” City= “Wimsheim 9 ” Name= “Y” 18
    19. 19. Graph Search Feature of FB Wondered How ? 19
    20. 20. Graph Databases Basic Concepts – Connection based Name= “Elena” Name= “Vinoth” City= “PF ” Name= “WIDAS” 3 1 6 FRIEND Since : 2012 2 Name= “Thomas” City= “Wimsheim ” 20
    21. 21. Graph Databases Basic Concepts – Spatial Data Name= “Stuttgart Hbf” Lat = 48.460 Lon = 9.1040 Name= “WIDAS” Lat = 48.510 Lon = 8.790 Name= “…..” Lat = 41.000 Lon = 9.840 distance: 24 km 3 ROAD 1 ROAD 6 12 distance: 51 km ROAD distance: 12 km 2 Name= “Pforzheim Cafe” Lat = 48.530 Lon = 8.420 9 21
    22. 22. Power of Graph Database Social Data + Spatial Data 22
    23. 23. Graph Databases Basic Concepts – Social and Spatial Data Name= “Stuttgart” Lat = 41.000 Lon = 40.840 Name= “WIDAS” Lat = 41.000 Lon = 40.840 Name= Thomas Travel_rating = expert distance: 24 km 3 Name= Elena Travel_rating = novice FRIENDS 1 ROAD 6 12 distance: 51 km distance: 12 km 2 Name= “Pforzheim” Lat = 41.000 Lon = 40.840 23
    24. 24. Some Use Cases Highly connected data (social networks) Recommendations (e-commerce) Path Finding (how do I know you?) Anamoly Detection (Financial Services)
    25. 25. FDS System with GraphDB Name= “Vinoth” IBAN= “DE1234 Name= “Xing Lee” Country = “China” IBAN = “XXXXXX” ” Name= “ATM@Romania” Lat = 41.000 Lon = 40.840 TRANSFERS 3 6 1 amount: € 4500 LIVES 2 Name= “Pforzheim” Lat = 41.000 Lon = 40.840 MARKED 9 Name= “Blacklist” 25
    26. 26. Thank you!
    1. ¿Le ha llamado la atención una diapositiva en particular?

      Recortar diapositivas es una manera útil de recopilar información importante para consultarla más tarde.

    ×