Graph Databases introduction to rug-b

3,583 views
3,353 views

Published on

Presentation done to the ruby user group from berlin about graphdbs

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

No Downloads
Views
Total views
3,583
On SlideShare
0
From Embeds
0
Number of Embeds
265
Actions
Shares
0
Downloads
56
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Graph Databases introduction to rug-b

  1. 1. Graph Databases Pere Urbon-Bayes Software Engineer Moviepilot GmbH Berlinpere@moviepilot.com
  2. 2. Graph Databases● Graph● Databases● Use cases● Vendors● Examples
  3. 3. Graph DatabasesGraph G(V,E) where V = {V1, V2, ..., VN} and E = {E1, E2, ... , EN} EN = (VN, VM)● Directed, Undirected● Mixed● Multigraph● Weighted● ....
  4. 4. Graph DatabasesTots els camins porten a Roma Alle Wege führen nach Rom
  5. 5. Graph Databases{ Implementations : { matrix : [ adjacency, incidence ], list : [ adjacency, incidence ], .....}
  6. 6. Graph Databases{ { A:{ vertex : [A, B, C, D] out: [B,C], edges : { in: [C], [A,B], } [B,C], [D,A], B:{ [C,A] out : [C] } } } C:{ A in : [A] }} C B
  7. 7. Graph Databases The property graphAbstraction layer Nodes Edges Properties on both Adam Balduim played in Full Metal Jacket played Actor Movie name = Adam Balduim title = Full Metal Jacket
  8. 8. Graph DatabasesA graph database is a database that uses graphstructures with nodes, edges, and properties to represent and store information. General graph databases that can store any graph are distinct from specialized graph databases such as triple stores and network databases. [wikipedia.org]
  9. 9. Graph DatabasesGraphDB Vendors Overview!
  10. 10. Graph Databases VendorsNeo4J (neo4j.org)Embedded, disk-based, fully transactional Javapersistence engine that stores data structured ingraphs rather than in tables.Dual-Licensed AGPL and Commercial.High Availability, scalability, concurrent,etc.
  11. 11. Graph Databases VendorsOrientDBAn embedded pure java fast, transactional,scalable document-graph storage engine.Schema free, ACID, suport for SQL and JSON.Apache License 2.0More info: http://www.orientechnologies.com/
  12. 12. Graph Database Vendors● Dex: The high performance graph database.● HyperGraphDB: An IA and semantic web graph database.● Infogrid: The Internet Graph database.● Sones: SaaS dot Net Graph database.● VertexDB: High performance database server.
  13. 13. Graph Database Graph processing frameworks● Phoebus : Pregel implementation in Erlang.● Pregel : Google graph processing platform.● Trinity : Microsoft C# future graph platform.● Apache Hama: Distributed computing over graphs.
  14. 14. Graph Database Graph APIs● Blueprints: A Java api for the property graph.● Gremlin: A graph query language.● Pipes: A graph processing framework.● Rexter: A REST server used to access graphdbs.
  15. 15. Graph Databases● Use cases
  16. 16. Graph Database Use cases● Task planning.● Scheduling● Process assignation● Routing● Logistics● League planning
  17. 17. Graph Database Use cases● Clustering● Social analysis● Hubs● Graph mining● Centrality measures● Location based services
  18. 18. Graph Database Use cases● Recommendation ● Heuristics ● Local – Shortest Paths – Hammock functions. – Walks – Search algorithms, like A* – Shooting stars – K-nearest neighbors
  19. 19. Graph Database Use cases● Semantic web. ● RDF (OWL) store ● RDF-Sail ● SPARQL● Linked data● Link analysis● Structure mining
  20. 20. Graph DatabaseNeo4j.rb Neo4j using JRuby

×