Más contenido relacionado La actualidad más candente (20) Similar a Graph database & neo4j (20) Graph database & neo4j2. Puzzle
Traces through all the edges of a graph without lifting one’s pencil
and without retracing any edge more than once
1. 2. 3.
4. 5. 6.
© 2013 TomTom. All rights reserved. Confidential information.2
3. Euler path
• An Euler path is a path that uses every edge of a
graph exactly once.
• Seven Bridges of Königsberg is a historically
notable problem in mathematics
• Theorem: An Eulerian trail exists in a connected
graph if and only if there are either no odd vertices
or two odd vertices.
© 2013 TomTom. All rights reserved. Confidential information.3
5. Four NOSQL Categories
• Key-value stores
• Based On Amazon’s Dynamo Paper
• Data model : (global) collection of K-V pairs
• Example : Riak, Voldemort, Redis
• Column-Family
• Based on Google’s BigTable paper
• Data Model: big table, column families
• Example : Hbase, Hypertable, Cassandra
© 2013 TomTom. All rights reserved. Confidential information.5
6. Four NOSQL Categories
• Document Databases
• Inspired by Lotus Notes
• Data model : collection of K-V Collection
• Example : CouchDB, MongoDB
• Graph Databases
• Inspired by Euler & graph theory
• Data Model: nodes, relationship
• Example : AllegroGraph,Sones,Neo4j
© 2013 TomTom. All rights reserved. Confidential information.6
9. Mumbai Local Map
Graph to represent simple map
© 2013 TomTom. All rights reserved. Confidential information.9
10. Early Adopters of Graph Tech
Facebook Social Graph
© 2013 TomTom. All rights reserved. Confidential information.10
11. Early Adopters of Graph Tech
Google internet graph ( Page Rank ) & Knowledge Graph
© 2013 TomTom. All rights reserved. Confidential information.11
Google Knowledge Graph
12. © 2013 TomTom. All rights reserved. Confidential information.12
Graph Database
& Neo4j Intro
15. Top Reasons choose Graph database
15
• Problems with Join performance.
• Continuously evolving data set (often
involves wide and sparse tables)
• The Shape of Domain is naturally a
graph
• Open-ended business requirements
necessitating fast, iterative
development.
© 2013 TomTom. All rights reserved. Confidential information.
16. Graph Databases are Designed to:
• Highly connected data (social networks)
• Make sense of that data
• Recommendations (e-commerce)
• Path Finding (how do I know you?)
• A* (Least Cost path)
Data First Schema (bottom-up, but you still need to
design)
© 2013 TomTom. All rights reserved. Confidential information.16
17. Emerging Domains to use Graph DB
17 © 2013 TomTom. All rights reserved. Confidential information.
19. Graph Db (Neo4j) Performance
© 2013 TomTom. All rights reserved. Confidential information.19
20. The Neo4J Secrete Sauce
© 2013 TomTom. All rights reserved. Confidential information.20
21. Neo4j Example : Matrix Movie
21 © 2013 TomTom. All rights reserved. Confidential information.
22. Create node & relationship
© 2013 TomTom. All rights reserved. Confidential information.22
28. Query language : Cypher
© 2013 TomTom. All rights reserved. Confidential information.28
29. Query language : Cypher
© 2013 TomTom. All rights reserved. Confidential information.29
30. Query language : Gremlin
© 2013 TomTom. All rights reserved. Confidential information.30
• Graph travels language
• DSL (Groovy based)
Notas del editor Data Model
ColumnFamily: ColumnFamily is a single structure that can group Columns and SuperColumns with ease.
Key: the permanent name of the record. Keys have different numbers of columns, so the database can scale in an irregular way.
Keyspace: This defines the outermost level of an organization, typically the name of the application. For example, ‘3PillarDataBase’ (database name).
Column: It has an ordered list of elements aka tuple with a name and a value defined.
In comparison, most relational DBMS store data in rows, the benefit of storing data in columns, is fast search/ access and data aggregation
polyglot persistence will come at a cost - but it will come because the benefits are worth it.
A Graph Database + Lucene Index
Property Graph
Full ACID (atomicity, consistency, isolation, durability)
High Availability (with Enterprise Edition)
32 Billion Nodes, 32 Billion Relationships, 64 Billion Properties
Embedded Server
REST API