Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SnapToQuery: Providing Interactive Feedback during Exploratory Query Specification

Arnab Nandi
September 02, 2015

SnapToQuery: Providing Interactive Feedback during Exploratory Query Specification

Slides presented at VLDB 2015, full paper PDF available at: http://www.vldb.org/pvldb/vol8/p1250-jiang.pdf

Video of SnapToQuery in action: http://go.osu.edu/snaptoquery

A critical challenge in the data exploration process is discovering and issuing the “right” query, especially when the space of possible queries is large. This problem of exploratory query specification is exacerbated by the use of interactive user interfaces driven by mouse, touch, or next-generation, three-dimensional, motion capture-based devices; which, are often imprecise due to jitter and sensitivity issues. In this paper, we propose SnapToQuery, a novel technique that guides users through the query space by providing interactive feedback during the query specification process by “snapping” to the user’s likely intended queries. These intended queries can be derived from prior query logs, or from the data itself, using methods described in this paper. In order to provide interactive response times over large datasets, we propose two data reduction techniques when snapping to these queries. Performance experiments demonstrate that our algorithms help maintain an interactive experience while allowing for accurate guidance. User studies over three kinds of devices (mouse, touch, and motion capture) show that SnapToQuery can help users specify queries quicker and more accurately; resulting in a query specification time speedup of 1.4× for mouse and touch-based devices and 2.2× for motion capture-based devices.

Arnab Nandi

September 02, 2015
Tweet

More Decks by Arnab Nandi

Other Decks in Technology

Transcript

  1. SnapToQuery: Providing
    Interactive Feedback during
    Exploratory Query Specification

    Lilong Jiang, Arnab Nandi

    Computer Science & Engineering
    The Ohio State University
    interactive data systems
    research group at ohio state

    View Slide

  2. Outline
    •  Motivation & Challenges
    •  Problem Formulation
    •  Our Solution
    •  Evaluation & Insights

    View Slide

  3. Motivation: Query Specification
    Specification Execution
    Specification
    Amount of Time
    Data Processing Tasks
    Data Analysis Tasks
    Execution

    View Slide

  4. Motivation: "
    Exploratory Query Specification
    •  Highly Interactive
    Applications
    •  Web, Mobile
    •  Scientific,
    Business
    •  E.g., Parameter
    Exploration 

    and Tuning
    •  Time to specify a
    query is often more
    than time to
    execute query
    Parameter Panel

    View Slide

  5. Motivation:"
    “Next-generation” Interfaces
    •  Touch, Gestures, and Motion-capture
    •  iPad, Kinect, HoloLens, Leap Motion, Surface
    Hub, BMW Cars
    •  Direct manipulation
    •  Better interactivity

    View Slide

  6. Humans are bad at querying!

    View Slide

  7. Challenges: Interactive UIs
    •  Lack of Precision
    •  Sensitivity / Jitter
    •  Exploration 

    is Result Agnostic
    0"
    0.1"
    0.2"
    0.3"
    0.4"
    0.5"
    0.6"
    0.7"
    0.8"
    0.9"
    1"
    0" 5000" 10000" 15000" 20000" 25000"
    Position!
    Time (ms)!
    Y!
    X!
    ✔!
    ✗!

    View Slide

  8. How do we guide the user to the
    “right” query by providing
    interactive feedback?
    ANSWER:
    "
    Snap To Queries during
    Exploratory Specification Step

    View Slide

  9. “Snap” Effect
    •  Alter relative position between cursor and
    handle to simulate friction and attraction

    •  Encourage selection of certain values
    •  But not disallow selection of others
    Snap Points

    View Slide

  10. Outline
    •  Motivation & Challenges
    •  Problem Formulation
    •  Our Solution
    •  Evaluation & Insights

    View Slide

  11. SnapToQuery Problem

    Find a representative query Qi
    such that 

    Result(Qi±δ
    ) yields same / similar result as 

    Result(Qi
    )

    •  “Snap” to Qi
    •  Feedback during user interaction

    View Slide

  12. SELECT COUNT(*) from T

    WHERE
    v11
    < d1
    < v12
    ,
    v21
    < d2
    < v22
    ,
    …,
    vj1
    < dj
    < vj2
    SNAPTO Δ ≥ Δl
    FEEDBACK snapping(Δ, Δl
    , Δh
    )
    Query class: "
    n-dim range selection

    View Slide

  13. SnapToQuery Architecture
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    DB
    Mouse, Tablet, Leap Motion
    Naive Method
    Data Contour Method
    Data Reduction
    Visualization
    Snapping Algorithm
    Network

    View Slide

  14. Feedback: SnapToQuery
    •  Bias representative queries during interaction
    •  Representative queries: value is aligned with the bin boundary
    •  Alter relative position between cursor and handle to simulate friction and
    attraction
    gap area
    catch up
    snapping
    !"
    qr1 qr2
    ∆"($%1,$%2)>∆'!?!
    !?!

    View Slide

  15. Snapping Function
    •  Linear snapping function
    •  Other snapping functions (sigmoid, exponential, etc)
    (="​∆"−"∆'/∆ℎ"−"∆' +"∆'
    !"=("×'ℎ

    View Slide

  16. Scaling Challenge
    •  Exploratory Specification = Frontend
    •  It is hard to keep all data (to compute
    result) at the frontend!
    •  Solution: Data Reduction
    •  Frontend uses 

    a summarized 

    representation
    1 3 5 7 9 11 13 15
    DB
    Mouse, Tablet,
    Leap Motion
    Naive Method
    Data Contour
    Method
    Data Reduction
    Visualization
    Snapping
    Algorithm
    Network

    View Slide

  17. Data Reduction Strategies
    •  Fast to compute
    •  Performed offline, at backend
    •  Lightweight
    •  Used at frontend
    •  Fluid Experience
    •  Accurate
    •  Correctly guide the user
    •  Approaches Considered (details in the paper):
    •  Bin / Grid-based
    •  Sampling
    •  Data Contour

    View Slide

  18. Data Contour: Snap to cluster boundary
    -74.02
    -74.01
    -74
    -73.99
    -73.98
    -73.97
    -73.96
    -73.95
    -73.94
    start station longitude
    q1i
    q1r
    q1i
    is represented by q1r
    v1
    q2r
    Snapping will happen if Δ(q1r
    , q2r
    ) > Δl
    v2
    v

    View Slide

  19. Outline
    •  Motivation
    •  Problem Formulation
    •  Our Solution
    •  Snapping Feedback
    •  Data Reduction
    •  SnapToQuery in Action
    •  Evaluation & Insights

    View Slide

  20. SnapToQuery in Action

    View Slide

  21. Outline
    •  Motivation
    •  Problem Formulation
    •  Our Solution
    •  Snapping Feedback
    •  Data Reduction
    •  SnapToQuery in Action
    •  Evaluation & Insights

    View Slide

  22. Evaluation: Questions
    •  Performance
    •  Are we fast enough to provide interactive
    speeds?

    •  Effectiveness
    •  Does SnapToQuery help end-users?

    View Slide

  23. Performance: Time-to-task
    1
    10
    100
    1000
    10000
    100000
    logTime(µs)
    Original Naive Sample Data Contour
    DATAROAD
    w/
    20 bins
    DATAROAD
    w/
    50 bins
    DATABIKE
    w/
    50 bins
    DATABIKE
    w/
    20 bins
    •  The data reduction can help maintain an interactive
    performance.
    •  The data contour achieves the lowest time!

    View Slide

  24. does snapping really help "
    query specification for end-users?

    View Slide

  25. User Study Setup
    •  Interfaces: Mouse, Touch, Leap Motion
    •  Users: 30 users, between-subjects study
    •  Task
    o  Range Selection using Sliders
    o  Each task includes 3 subtasks on three sliders
    o  The first target is the left snapping position
    o  The second target is the right snapping position
    o  The third target is the second left snapping position
    •  Compare the case w/ and w/o snapping
    o  specification time
    o  miss time: how many times users miss the target query

    View Slide

  26. Query Specification Experiments
    0
    20
    40
    60
    80
    100
    120
    140
    160
    mouse w/o
    snapping
    mouse w/
    snapping
    iPad w/o
    snapping
    iPad w/
    snapping
    leap motion
    w/o
    snapping
    leap motion
    w/ snapping
    Time (s)
    switchtime subtime3 subtime2 subtime1
    1.4 X
    1.4 X 2.2 X
    •  1.4 x speedup for the mouse and touch, 2.2 x speedup for the leap
    motion.
    •  The performance of leap motion w/ snapping is comparable to the
    mouse and iPad.

    View Slide

  27. Query Specification: Accuracy"
    time wasted in missing the target
    0
    5
    10
    15
    20
    25
    mouse w/o
    snapping
    mouse w/
    snapping
    iPad w/o
    snapping
    iPad w/
    snapping
    leap motion
    w/o snapping
    leap motion
    w/ snapping
    Miss Times
    submisstimes3 submisstimes2 submisstimes1
    Miss times are reduced !

    View Slide

  28. Outline
    •  Motivation
    •  Problem Formulation
    •  Our Solution
    •  Evaluation & Insights
    •  Data Contour method
    •  achieves interactive latencies
    •  SnapToQuery allows users to specify queries
    •  faster
    •  with better accuracy

    View Slide

  29. Summary
    •  Exploratory Query Specification 

    is popular but challenging
    •  important to guide users
    •  Interactive Feedback is very useful
    •  take advantage of data
    •  data reduction using contour method
    •  generalizable problem formulation
    •  many open problems!
    •  SnapToQuery 

    Speeds up Query Specification Times
    •  1.4 x for mouse and touch, 2.2 x for leap motion

    View Slide

  30. Thank you!
    interactive data systems
    research group at the ohio state university
    papers, videos & more at http://interact.osu.edu

    View Slide