Graph databases

  • 343 views
Uploaded on

My presentation about introduction to graph database.

My presentation about introduction to graph database.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
343
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
9
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    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

Transcript

  • 1. Graph Databases Introduction & Concepts Vinoth Kannan vinoth.kannan@widas.de 1
  • 2. Agenda Overview of NoSQL What is a Graph Database Concept Some Use Cases Conclusion 2
  • 3. Overview of NoSQL NoSQL Not Only SQL 3
  • 4. Types of NoSQL Key Value Stores Column Family Document Databases Graph Databases 4
  • 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. 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. 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. Graph Databases NoSQL Types Based on Euler & Graph Theory Data Model: Nodes and Relationships Examples: Neo4j, OrientDB, InfiniteGraph, AllegroGraph, Titan 8
  • 9. NoSQL Performace Complexity vs Size ……………….. Graph Store Data Complexity Document Store CF Store K-V Store RDBMS Data Size 9
  • 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. Different Types of Graphs Graph Type Undirected Graph Directed Graph Pseudo Graph Multi Graph Hyper Graph Diagram
  • 12. Different Types of Graphs Graph Type Weighted Graph Labeled Graph Property Graph Diagram
  • 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. Compared to Relational Databases Optimized for aggregation Optimized for connections
  • 15. Compared to Key Value Stores Optimized for simple look-ups Optimized for traversing connected data
  • 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. Friends Recommendation Wondered How ? 17
  • 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. Graph Search Feature of FB Wondered How ? 19
  • 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. 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. Power of Graph Database Social Data + Spatial Data 22
  • 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. Some Use Cases Highly connected data (social networks) Recommendations (e-commerce) Path Finding (how do I know you?) Anamoly Detection (Financial Services)
  • 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. Thank you!