Data modeling                             . . . with graphs                                         @PeterBellWednesday, N...
-   Terminology                             -   Examples                             -   Patterns                         ...
TerminologyWednesday, November 28, 12
relational database                                    tables                                   columns                   ...
Wednesday, November 28, 12
neo4j                                 nodes                             relationships                              propert...
Wednesday, November 28, 12
Wednesday, November 28, 12
indexesWednesday, November 28, 12
Wednesday, November 28, 12
indexesWednesday, November 28, 12
traversalsWednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
CypherWednesday, November 28, 12
OO language - domain objects                             Object (graph|relational) mapping           Java domain objects  ...
ExamplesWednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
Article    CATEGORIZED_UNDER                          WRITTEN_BY                               ADDED_TO                Cat...
GeographicWednesday, November 28, 12
BioinformaticWednesday, November 28, 12
PatternsWednesday, November 28, 12
start with a whiteboardWednesday, November 28, 12
Wednesday, November 28, 12
Handling entitiesWednesday, November 28, 12
...provide a familiar and consistent Spring                             based programming model while retaining           ...
Wednesday, November 28, 12
Restaurant                                         - name                                         - address               ...
Wednesday, November 28, 12
Wednesday, November 28, 12
Restaurant                                        - name                                        - address                 ...
Restaurant         SERVES                                  - name                    Cuisine                              ...
SERVES                                    Taj Mahal                      Indian cuisine                                   ...
read sentences from graphWednesday, November 28, 12
Wednesday, November 28, 12
Indexes for starting pointsWednesday, November 28, 12
User                             - email_address                             - first_name                             - las...
Relationships for queryingWednesday, November 28, 12
User                                        - email_address                                        - first_name            ...
User                   State                       - email_address   LIVES_IN   - name                       - first_name  ...
Jess                                      LIVES_IN                                               California               ...
Use meaningful namesWednesday, November 28, 12
Language         Country                             - language_id                                             - country_i...
Language     LanguageCountry     Country                  - language_id   - language_id     - country_id                  ...
Language     LanguageCountry     Country                  - language_id   - language_id     - country_id                  ...
Language                     Country                                     IS_SPOKEN_IN                      - name         ...
Language                       Country                                       IS_SPOKEN_IN                      - name     ...
Anti-PatternsWednesday, November 28, 12
Hefty nodesWednesday, November 28, 12
User                             - first_name                                               - ship_address                 ...
BILLS_TO     Address                             User                 - first_name                     - street_address    ...
BILLS_TO                             User                       Address                   - first_name                     ...
Jess                                      IS_A                                             Regular                        ...
Missing nodesWednesday, November 28, 12
EMAILED                             Peter             JimWednesday, November 28, 12
SENT           TO                             Peter          Email        JimWednesday, November 28, 12
Hot nodeWednesday, November 28, 12
Wednesday, November 28, 12
Key takeawaysWednesday, November 28, 12
Indexes for starting points                               Relationships for queries                             Read sente...
- Indexes for starting points                             - Relationships for queries                             - Read s...
Upcoming SlideShare
Loading in …5
×

2012 11-28 rich web data modeling with graphs-1

503
-1

Published on

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
503
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2012 11-28 rich web data modeling with graphs-1

  1. 1. Data modeling . . . with graphs @PeterBellWednesday, November 28, 12
  2. 2. - Terminology - Examples - Patterns - Key takeawaysAgendaWednesday, November 28, 12
  3. 3. TerminologyWednesday, November 28, 12
  4. 4. relational database tables columns records foreign keysWednesday, November 28, 12
  5. 5. Wednesday, November 28, 12
  6. 6. neo4j nodes relationships propertiesWednesday, November 28, 12
  7. 7. Wednesday, November 28, 12
  8. 8. Wednesday, November 28, 12
  9. 9. indexesWednesday, November 28, 12
  10. 10. Wednesday, November 28, 12
  11. 11. indexesWednesday, November 28, 12
  12. 12. traversalsWednesday, November 28, 12
  13. 13. Wednesday, November 28, 12
  14. 14. Wednesday, November 28, 12
  15. 15. Wednesday, November 28, 12
  16. 16. CypherWednesday, November 28, 12
  17. 17. OO language - domain objects Object (graph|relational) mapping Java domain objects Java domain objects Hibernate Spring Data Neo4j SQL Cypher Tables/rows/columns/FKs Nodes/relationships/propertiesWednesday, November 28, 12
  18. 18. ExamplesWednesday, November 28, 12
  19. 19. Wednesday, November 28, 12
  20. 20. Wednesday, November 28, 12
  21. 21. Article CATEGORIZED_UNDER WRITTEN_BY ADDED_TO Category Author Comment WRITTEN_BY FOLLOWS CommenterWednesday, November 28, 12
  22. 22. GeographicWednesday, November 28, 12
  23. 23. BioinformaticWednesday, November 28, 12
  24. 24. PatternsWednesday, November 28, 12
  25. 25. start with a whiteboardWednesday, November 28, 12
  26. 26. Wednesday, November 28, 12
  27. 27. Handling entitiesWednesday, November 28, 12
  28. 28. ...provide a familiar and consistent Spring based programming model while retaining store specific features and capabilitiesWednesday, November 28, 12
  29. 29. Wednesday, November 28, 12
  30. 30. Restaurant - name - address - cuisine - comment RECOMMENDS_THE - rating User - first_name - last_nameWednesday, November 28, 12
  31. 31. Wednesday, November 28, 12
  32. 32. Wednesday, November 28, 12
  33. 33. Restaurant - name - address - cuisine RECOMMENDS_A - comment - rating User - first_name - last_nameWednesday, November 28, 12
  34. 34. Restaurant SERVES - name Cuisine - address - comment RECOMMENDS_THE - rating User - first_name - last_nameWednesday, November 28, 12
  35. 35. SERVES Taj Mahal Indian cuisine - “Great garlic nan and tandoori” RECOMMENDS - 4/5 Fred JonesWednesday, November 28, 12
  36. 36. read sentences from graphWednesday, November 28, 12
  37. 37. Wednesday, November 28, 12
  38. 38. Indexes for starting pointsWednesday, November 28, 12
  39. 39. User - email_address - first_name - last_nameWednesday, November 28, 12
  40. 40. Relationships for queryingWednesday, November 28, 12
  41. 41. User - email_address - first_name - last_name - shipping_state Select * where shipping_state = ‘Ca’?Wednesday, November 28, 12
  42. 42. User State - email_address LIVES_IN - name - first_name - code - last_nameWednesday, November 28, 12
  43. 43. Jess LIVES_IN California LIVES_IN LIVES_IN Andreas AndrewWednesday, November 28, 12
  44. 44. Use meaningful namesWednesday, November 28, 12
  45. 45. Language Country - language_id - country_id - name - name - word count - flag url - country_idWednesday, November 28, 12
  46. 46. Language LanguageCountry Country - language_id - language_id - country_id - name - country_id - name - word count - spoken_since - flag urlWednesday, November 28, 12
  47. 47. Language LanguageCountry Country - language_id - language_id - country_id - name - country_id - name - word count - spoken_since - flag urlWednesday, November 28, 12
  48. 48. Language Country IS_SPOKEN_IN - name - name - word count - flag urlWednesday, November 28, 12
  49. 49. Language Country IS_SPOKEN_IN - name - name - word count - flag url SIMILAR_TO ADJACENT_TOWednesday, November 28, 12
  50. 50. Anti-PatternsWednesday, November 28, 12
  51. 51. Hefty nodesWednesday, November 28, 12
  52. 52. User - first_name - ship_address - last_name - ship_city - email_address - ship_state - bill_address - ship_zip - bill_city - regular_customer - bill_state - bill_zipWednesday, November 28, 12
  53. 53. BILLS_TO Address User - first_name - street_address - last_name - city - email_address - state - regular_customer SHIPS_TO - zipWednesday, November 28, 12
  54. 54. BILLS_TO User Address - first_name - street_address - last_name SHIPS_TO - city - email_address - state - zip IS_A Regular customerWednesday, November 28, 12
  55. 55. Jess IS_A Regular customer IS_A IS_A Andreas AndrewWednesday, November 28, 12
  56. 56. Missing nodesWednesday, November 28, 12
  57. 57. EMAILED Peter JimWednesday, November 28, 12
  58. 58. SENT TO Peter Email JimWednesday, November 28, 12
  59. 59. Hot nodeWednesday, November 28, 12
  60. 60. Wednesday, November 28, 12
  61. 61. Key takeawaysWednesday, November 28, 12
  62. 62. Indexes for starting points Relationships for queries Read sentences from the graph Look out for verb’d nounsWednesday, November 28, 12
  63. 63. - Indexes for starting points - Relationships for queries - Read sentences from the graph - Look out for verb’d nounsData modeling with graphs @PeterBellWednesday, November 28, 12

×