Provenance for Interactive Visualizations Fotis Psallidas Eugene Wu - - PowerPoint PPT Presentation

provenance for interactive visualizations
SMART_READER_LITE
LIVE PREVIEW

Provenance for Interactive Visualizations Fotis Psallidas Eugene Wu - - PowerPoint PPT Presentation

Provenance for Interactive Visualizations Fotis Psallidas Eugene Wu fotis@cs.columbia.edu ewu@cs.columbia.edu Provenance Primer Fine-Grained Provenance (Connections between input and output tuples) Provenance Primer Fine-Grained Provenance


slide-1
SLIDE 1

Provenance for Interactive Visualizations

Fotis Psallidas fotis@cs.columbia.edu Eugene Wu ewu@cs.columbia.edu

slide-2
SLIDE 2

Provenance Primer

Fine-Grained Provenance (Connections between input and output tuples)

slide-3
SLIDE 3

Provenance Primer

Airports

name state a1 LGA NY a2 JFK NY a3 IAH TX

Flights

from delay f1 LGA 30 f2 LGA 40 f3 JFK 60 f4 IAH 60

γ

from delay state j1 LGA 30 NY j2 LGA 40 NY j3 JFK 50 NY j4 IAH 60 TX

O

state avg(delay) O1 NY 40 O2 TX 60

O = γ#$%$&,%()(+&,%-)(Airports⨝Flights)

name = from

Fine-Grained Provenance (Connections between input and output tuples)

slide-4
SLIDE 4

Provenance Primer

{f4} = backward_trace({o2}, Flights) Fine-Grained Provenance (Connections between input and output tuples)

Airports

name state a1 LGA NY a2 JFK NY a3 IAH TX

Flights

from delay f1 LGA 30 f2 LGA 40 f3 JFK 60 f4 IAH 60 from delay state j1 LGA 30 NY j2 LGA 40 NY j3 JFK 50 NY j4 IAH 60 TX

O

state avg(delay) O1 NY 40 O2 TX 60

slide-5
SLIDE 5

Provenance Primer

Fine-Grained Provenance (Connections between input and output tuples) {o2} = forward_trace({f4}, O)

Airports

name state a1 LGA NY a2 JFK NY a3 IAH TX

Flights

from delay f1 LGA 30 f2 LGA 40 f3 JFK 60 f4 IAH 60 from delay state j1 LGA 30 NY j2 LGA 40 NY j3 JFK 50 NY j4 IAH 60 TX

O

state avg(delay) O1 NY 40 O2 TX 60

slide-6
SLIDE 6

Provenance Primer

Fine-Grained Provenance (Connections between input and output tuples)

Airports

name state a1 LGA NY a2 JFK NY a3 IAH TX

Flights

from delay f1 LGA 30 f2 LGA 40 f3 JFK 60 f4 IAH 60 from delay state j1 LGA 30 NY j2 LGA 40 NY j3 JFK 50 NY j4 IAH 60 TX

O

state avg(delay) O1 NY 40 O2 TX 60

slide-7
SLIDE 7

Provenance Primer

Fine-Grained Provenance (Connections between input and output tuples)

  • Navigation of the input-output connections
  • {records} = backward_trace(…)
  • {records} = forward_trace(…)
  • Provenance consuming queries
  • SQL(backward_trace(…))
  • SQL(forward_trace(…))
slide-8
SLIDE 8

Goal of this talk

How to use fine-grained provenance to express core interactive application functionality See [Smoke, VLDB18] or pass by our demo on Wednesday/Thursday Why though? q (Expressivity) Logic over provenance is expressed declaratively q (Performance) Provenance management systems are becoming *fast*

slide-9
SLIDE 9

Connections Core interaction logic with provenance

  • Selections
  • Logic over selections
  • Multi-view linking
slide-10
SLIDE 10

Interactive Selections

View V1

airports flights

Example: Find the airports that operate at the selected states Goal: Get subset of inputs that correspond to selected visual outputs

slide-11
SLIDE 11

Interactive Selections

= backward_trace( ,airports)

airports

Example: Find the airports that operate at the selected states Goal: Get subset of inputs that correspond to selected visual outputs View V1

airports flights

slide-12
SLIDE 12

View V1

airports flights

Logic over Selections

SQL(backward_trace( ,airports))

54 airports operate in this area

V2

Goal: Express application logic over the selected inputs Example: Find the #airports that operate at the selected states

slide-13
SLIDE 13

Multi-View linking

View V2 View V1

Carrier

backward_trace( ,flights)

airports flights airlines

selective_refresh(V2, flights ) Goal: Look at the relationships between different views Example: Show the distribution of #flights per carrier only for selected states

slide-14
SLIDE 14

Provenance for Interactive Visualizations

Interactive Selections

  • Item selection
  • Group selection
  • Range selection
  • Generalized selections}

backward_trace(…)

Logic over Selections

  • Tooltips
  • Details-On-Demand
  • Semantic Zooming }

SQL(backward_trace(…))

Multi-View Linking

  • Linked Brushing
  • Crossfilter

selective_refresh(backward_trace(…))

}

slide-15
SLIDE 15

What next?

ML Interpretability Data Integration Query Explanations Interaction Debugging Viz Workflow Debugging Application Design Search Replication and Reproducibility Multi-Application Linking Why-not Analytics Interactive Data Profiling Visualization Deconstruction and Restyling Interaction By Example What-if Provisioning Iterative Analytics Interactive Data Cleaning

Traditionally provenance systems have been at the core of several applications

Interactive Query Specification Collaborative Communication Action Recovery Sense-Making Meta-Analysis Debugging Auditing Resource Scheduling Network Diagnostics Interactive Visualizations

… …

Multi-Application Linking

slide-16
SLIDE 16

What next?

ML Interpretability Query Explanations Interaction Debugging Viz Workflow Debugging Application Design Search Replication and Reproducibility Multi-Application Linking Why-not Analytics Interactive Data Profiling Visualization Deconstruction and Restyling Interaction By Example What-if Provisioning Iterative Analytics Interactive Data Cleaning

Traditionally provenance systems have been at the core of several applications

Interactive Query Specification Collaborative Communication Action Recovery Sense-Making Meta-Analysis Interactive Visualizations

Data Integration Debugging Auditing Resource Scheduling Network Diagnostics

(Fast) Provenance management systems can make a difference on several other domains

slide-17
SLIDE 17

Multi-Application Linking

V1

Vis App Data Store

airports flights

airlines

  • Many applications are built over the same database (esp. in enterprises)
  • Extend multi-view linking to multi-application linking
  • Powerful for: connecting data across apps, reuse app logic

Search App

V2

2:50-5:60 DL33 IAH, TX 3:50-6:60 UA22 IAH, TX

HOUSTON

slide-18
SLIDE 18

Multi-Application Linking

V1

Vis App Data Store

airports flights

airlines

  • Many applications are built over the same database (esp. in enterprises)
  • Extend multi-view linking to multi-application linking
  • Powerful for: connecting data across apps, reuse app logic

Search App

V2

2:50-5:60 DL33 IAH, TX 3:50-6:60 UA22 IAH, TX

HOUSTON Average Departure Delay 60 minutes

slide-19
SLIDE 19

Takeaway

Interaction Logic as Provenance

Declarative wins & Holistic optimization

slide-20
SLIDE 20

Thank You //Q