Graph database

1,536 views

Published on

Introduction to the applications of graph databases

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

No Downloads
Views
Total views
1,536
On SlideShare
0
From Embeds
0
Number of Embeds
454
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Graph database

  1. 1. sergeyenin@gmail.com   Sergey  Enin   /pankrat   /sergeyenin  
  2. 2. AGENDA GRAPH   NOSQL   DBs   APP   NEO4J  
  3. 3. Graph  Databases   Graph Databases
  4. 4. Graph Databases: HISTORY Leonhard Euler (1707 –1783) Swiss mathematician
  5. 5. Graph Databases: HISTORY
  6. 6. What is Graph?
  7. 7. Graph Databases: GRAPH A   B   Ver%ce   (Node)   C   Edge   (Rela%onship)   D  
  8. 8. Graph Databases: WHAT IS IT?
  9. 9. Graph Databases: WHAT IS IT? Joins   VS   Traversals  
  10. 10. Graph Databases: CHARACTERISTICS 1 Good for semistructured connected data Index freeadjacency 2 3 The underlying storage The processing engine 4
  11. 11. APPs
  12. 12. ApplicaFon:  social  graphs  
  13. 13. Application: PAGE RANK
  14. 14. APP: Collaborative filtering
  15. 15. Neo4J: CHARACTERISTICS   true  ACID  transac%ons;     scales  to  billions  of  nodes  and  rela%onships;     high  speed  querying  through  traversals;     declara%ve  graph  query  language;  
  16. 16. Neo4J:   who   use   Neo4J: WHO USE it  
  17. 17. Neo4J:   who   use   Neo4J: NETWORK ARCHITECTURE it   Neo4J:  network  architecture  
  18. 18. Neo4J:  architecture   Neo4J: ARCHITECTURE
  19. 19. Neo4J:  architecture   Neo4J: Internal storage Node   Rela%onship  
  20. 20. Neo4J:  architecture   Neo4J: Internal storage
  21. 21. APP: Collaborative filtering Neo4J: CF
  22. 22. APP: Collaborative filtering Neo4J: CF
  23. 23. Neo4J: CYPHER MATCH    (p1:Person)-­‐[x:RATED]-­‐>(m:PRODUCT)<-­‐[y:RATED]-­‐ (p2:Person)   WITH    SUM(x.ra%ng  *  y.ra%ng)  AS  xyDotProduct,   SQRT(REDUCE(xDot  =  0,  a  IN  COLLECT(x.ra%ng)  |  xDot  +  a^2))   AS  xLength,  SQRT(REDUCE(yDot  =  0,  b  IN  COLLECT(y.ra%ng)  |   yDot  +  b^2))  AS  yLength,  p1,  p2   CREATE  UNIQUE    (p1)-­‐[s:SIMILARITY]-­‐(p2)   SET    s.similarity  =  xyDotProduct  /  (xLength  *  yLength)  
  24. 24. sergeyenin@gmail.com   Thank  you!   /pankrat   /sergeyenin  

×