we re not just relational anymore teaching neo4j as part
play

Were not just relational anymore: Teaching Neo4j as Part of an - PowerPoint PPT Presentation

Were not just relational anymore: Teaching Neo4j as Part of an Introductory Database Course Neo4j Nodes 2019 Risa Myers Rice University RICE 1 Objectives Who? What? Why? How? Where to? RICE 2 Who: Risa Myers risamyers@rice.edu


  1. We’re not just relational anymore: Teaching Neo4j as Part of an Introductory Database Course Neo4j Nodes 2019 Risa Myers Rice University RICE 1

  2. Objectives Who? What? Why? How? Where to? RICE 2

  3. Who: Risa Myers risamyers@rice.edu Assistant Teaching Professor, Rice University Databases Data Science PhD in Computer Science (Rice) ∼ 20 years industry experience Software Engineering Information Technology Project Management Systems Analysis Data Scientist DATA / DATABASE RICE 3

  4. Who: Computer Science Department, Rice University Houston, Texas ∼ 7,000 total students Computer Science ∼ 370 Undergrads ∼ 150 MS students ∼ 120 PhD students Largest major 34 faculty (and growing) Top 20 RICE 4

  5. What: Introduction to Database Systems Course 9 ∞ Started as single comprehensive course Once a year Covered the relational model 2 4 7 9 12 Declarative SQL Imperative SQL Entity Relationship Diagrams ACID properties B+ trees Speed Lift (1,M) Serves ... (0,M) LiftName BelongsTo RICE 5

  6. Then: Database Implementation Course Architecture Data storage Indexing structures Created an opportunity Query processing ... Build a database RICE 6

  7. What: Revised Introduction Course Focus on database USER Teach enough internals to make good decisions Add in NoSQL databases RICE 7

  8. Why: Add NoSQL? The world is no longer [fully] relational Gives students experience in picking up new database systems Teaches them how to manage different types of data (it’s not all CSV) Makes them competitive It’s fun RICE 8

  9. What: NoSQL Version 1.0 Version 2.0 Version 3.0 NoSQL concepts +Local Graph Hosted Graph Database (Neo4j) Database (Neo4j) Document Store 1 class session +1 class session Graduate student project Homework assignment Quiz on concepts RICE 9

  10. How: Teach Graph Database Concepts NoSQL concepts Specialized systems Scalability, dynamic structure, performance focus, ... How to choose? Graph database / Neo4j system specific concepts Design trade-offs (e.g. property vs. node) Building blocks: Node, Property, Relationship, Label Discuss directional and non-directional relationships Cypher examples ... RICE 10

  11. How: Teach Graph Database Concepts Relate back to Relational and Document Store concepts Student Enroll studentId name studentId course abc1 Albert abc1 COMP 430 def2 COMP 430 def2 Danielle ghi3 Gary abc1 COMP 431 stu7 Sandeep yz10 Yusin Major studentId major ghi3 STAT ghi3 COMP abc1 COMP def2 ECE stu7 STAT RICE 11

  12. How: Assignment Goals Explore Cypher Nodes Relationships Properties Learn what is easier / harder in a graph database Learn some network concepts (Betweeness Centrality, degree of a node, shortest paths, ...) Provide an environment where they could check their work RICE 12

  13. How: Assignment Course running theme of designing a database for an ice cream food truck Document store assignment had students collecting tweets about ice cream and food trucks Added Neo4j assignment to analyze network of food trucks on twitter and their followers RICE 13

  14. How: Assignment Details Cypher Create relationships (between food trucks and followers) Count number of trucks a particular follower follows Find the most "popular" truck In and out degrees Shared followers with other trucks ... Mini recommendation system: Find trucks that one follower follows that another follower doesn’t follow Find the shortest path between trucks Relational (Extra Credit) Implement Betweenness Centrality RICE 14

  15. Where to: Lessons Learned In class content needed to be more detailed (more examples) Data was too connected Installation on student machines can be challenging RICE 15

  16. Where to: Assignment v2 (this semester!) Less connected network (university residences) More build up of questions from easy to hard More network modification Provide exercises that show the impact of changes to the network RICE 16

  17. Summary Students value learning more database systems than just the relational model This is an evolving portion of the class Looking forward to the launch of Neo4j’s Educator Program risamyers@rice.edu RICE 17

  18. Questions Hunger Games for: We’re not just relational anymore: Teaching Neo4j as Part of an Introductory Database Course 1 Easy: Once students learn the relational model it’s difficult for them to adapt to a graph database A True B False 2 Medium: Networks have to be large and complex for students to learn from them A True B False 3 Hard: How many students are at Rice University? A ∼ 5,000 B ∼ 7,000 C ∼ 10,000 Answer at r.neo4j.com/hunger-games RICE 18

Recommend


More recommend