Successfully reported this slideshow.

Interactive Browsing and Navigation in Relational Databases

1

Share

1 of 33
1 of 33

More Related Content

Interactive Browsing and Navigation in Relational Databases

  1. 1. Interactive Browsing & Navigation in Relational Databases Minsuk Kahng Sham Navathe John Stasko Polo Chau Research Track
  2. 2. Database Usability Important, but often overlooked 2
  3. 3. Command-line interface 3 Figure from https://dev.mysql.com/doc/workbench/en/wb
  4. 4. Spreadsheet 4 Figure from https://vizubi.uservoice.com/knowledgebase/articles/261214-how-to-create-an-excel-pivottable-report
  5. 5. What makes databases hard to use? 5
  6. 6. Join!Even very simple queries require many tables 6
  7. 7. 7 SELECT p.title, p.year, pa.author_order, a.name FROM Papers p, Paper_Authors pa, Authors a, Conferences c WHERE p.id = pa.paper_id AND pa.author_id = a.id AND p.conference_id = c.id AND c.acronym = ‘SIGMOD’ ORDER BY p.year DESC Find all SIGMOD papers and their authors:
  8. 8. Visual Query Builders 8 Figure from http://sqleo.sourceforge.net/screenshots.htm
  9. 9. Two usability challenges in writing complex queries 9
  10. 10. 10 Join results are hard to interpret Due to duplications produced from joining tables in many-to-many relationships Challenge 1
  11. 11. More natural representations exist e.g., Nested tables, Comma-separated lists But not directly supported by relational DB, due to 1NF 11 Challenge 1 Nested tables
  12. 12. More natural representations exist e.g., Nested tables, Comma-separated lists But not directly supported by relational DB, due to 1NF 12 Challenge 1 Comma-separated lists
  13. 13. Our Solution: Presentation View Layer Inspired by the presentation data model concept, defined as a full-fledged layer on top of the logical models (Jagadish et al., 2007). 13 Challenge 1 Presentation view layer Logical models
  14. 14. Queries and results are separated Introducing a usability breakdown between users’ actions and their results. 14 Challenge 2 Query Results
  15. 15. Our Solution: Direct Manipulation Users directly interact with query results to refine them (e.g., click) 15 Challenge 2 Figure from https://www.microsoft.com/en-us/research/video/holograph-3-d-spatiotemporal-interactive-data-visualization/
  16. 16. Research Goals 16 Duplications in join query results A presentation-level view with easy-to-interpret format Easy-to-use interactions based on direct manipulation Separation of queries and results 1. 2. Develop usable database interfaces 1. 2. Problems: Our Solutions:
  17. 17. We propose ETable For interactively browsing and navigating databases at the entity-relationship level ETable tightly integrates • A novel hybrid representation (between relational and nested-relational) • A novel set of interactions that closely work with the representation 17 1NF (duplications) may need large screen space
  18. 18. Design of ETable Each column represents either a base attribute or a set of entity references (Non-1NF) Count Other tables Entity-reference columnsBase attributes A set of entities
  19. 19. How to determine additional columns? Direct neighbors in entity-relationship graphs created during preprocessing 19 E-R Schema GraphRelational Schema
  20. 20. Users explore data at conceptual level Once translated, ETable works with E-R graph, which frees users from logical schema 20 Presentation Conceptual Logical
  21. 21. How do users specify queries? Users directly interact with the table, then those actions are translated into internal operators. 21
  22. 22. Example Interaction #1: Show entity details Click entity reference (author’s name)
  23. 23. Example Interaction #2: Show more entities Click author count
  24. 24. Example Interaction #3: Pivot (group and aggregate) 24 Click Pivot button on Authors column
  25. 25. Pivot = Join + Aggregation SELECT Papers.*, .. FROM Conferences c, Papers p WHERE c.id = p.conference_id AND c.acronym = ‘SIGMOD’ .. GROUP BY Papers.id SELECT Authors.*, .. FROM Conferences c, Papers p, Paper_Authors pa, Authors a WHERE c.id = p.conference_id AND .. AND pa.author_id = a.id AND c.acronym = ‘SIGMOD’ .. GROUP BY Authors.id ORDER BY COUNT(*) DESC Pivot on authors => shift focus to authors PapersConferences acr.. = ‘SIGMOD’ keyword like ‘user’ Equivalent SQL Internal Query Representation Add(‘Authors’) Shift(‘Authors’) AuthorsPapersConferences acr.. = ‘SIGMOD’ keyword like ‘user’
  26. 26. Demo Find researchers who have published the most papers in SIGMOD after 2005 26
  27. 27. Demo Find researchers who have published the most papers in SIGMOD after 2005
  28. 28. Recap Open Conferences table1 Click paper count2 Apply filters3 Click pivot button4 Find researchers who have published the most papers in SIGMOD after 2005
  29. 29. User Study 29
  30. 30. User Study Design 12 participants performed 6 querying tasks • Measured task completion times • ETable vs Navicat Graphical Query Builder (Within-subject design) 30 Task Category #relations 2. Find all the keywords of the paper titled `Collaborative filtering with temporal dynamics'. Attribute 2 4. Find all the papers written by researchers at `Carnegie Mellon' and published at KDD. Filter 5 6. Find the top 3 researchers who have published the most papers in the SIGMOD conference. Aggregate 4
  31. 31. Results Faster with ETable than with Navicat for all tasks 31 Lower is better Avg Time (s)
  32. 32. User Feedback Pivot made it easy to specify complex queries: “I also loved... having multiple pivots throughout the course of forming a query. I messed up a query, but could still find the right answer by doing an appropriate pivot.” Interface is intuitive: “Visually, I was able to see... the effects of the SQL operations, which made it easier to use and verify intermediate results.” 32
  33. 33. 33 1. Novel representation for conceptual level exploration 2. Novel operations for interactive query construction ETable: Interactive Browsing & Navigation in Relational Databases Minsuk (Brian) Kahng Georgia Tech CS PhD student http://minsuk.com

×