Enhancing Database Queries through VIQING: A Visual Approach to Simplifying Data Interaction
This paper presents VIQING, a visual programming interface designed to enhance database querying. Developed by Chris Olston and colleagues at UC Berkeley, it addresses the complexities of SQL by allowing users to express queries visually. VIQING integrates visualization and querying seamlessly, offering techniques for visual selections, joins, and reordering of data. The system showcases how users can interact with graphical data representations, making database exploration and manipulation intuitive and user-friendly. The paper outlines its functionalities and compares its effectiveness with existing tools.
Enhancing Database Queries through VIQING: A Visual Approach to Simplifying Data Interaction
E N D
Presentation Transcript
VIQINGVisual Interactive QueryING Chris Olston UC Berkeley 14th IEEE Symposium on Visual LanguagesHalifax, Nova Scotia, Canada September 1st - 4th, 1998 Authors Chris Olston, Michael Stonebraker, Alexander Aiken, Joseph M. Hellerstein
Outline • Introduction • Related Work • Background • Visual query results • Specifying visual queries • How VIQING generalizes other work • Status and future work
? Introduction • Databases are hard to use • Difficult to understand data in textual form • SQL query language hard to learn • Visual Programming Can Help! • Database visualization systems (like DataSplash) display data in graphical form • VIQING provides a simple interface for expressing queries over visualizations
? ? Related Work • Other interfaces offer visual programming • Visualization • QBE, Cupid, Tioga-1, AVS, Khoros, MS-Access, DEVise • Querying • 4GLs, Tioga-1, AVS, Khoros, Access, DEVise, Magic Lenses • But only VIQING/DataSplash offers a unified visual programming model for visualization and visual querying
Background • DataSplash is a data visualization tool that displays database data in graphical form • Each row in a database table gets translated into one graphical object on a canvas DataSplash Database 1.5232 2.8238 3.9221 Table Canvas One row
Example DataSplash Visualization • This visualization shows which political party each state has favored since 1952 • A DataSplash canvas can be infinitely panned and zoomed Red: Democrat Blue: Republican Each state is one database row
Bush ‘88 Clinton ‘92 Dukakis ‘88 Bush ‘92 Portals: Nested Visualizations • Portals are sub-windows in one canvas that show another canvas • Portals can be independently panned and zoomed This portal contains a canvas of presidential candidates ordered by year (X axis), with the winner on top (Y axis) A Portal
Outline • Introduction • Related Work • Background • Visual query results • Specifying visual queries • How VIQING generalizes other work • Status and future work
? Visual Selection • A visual selection displays only rows that pass a selection filter • Which states voted Democratic in 1992? Note that all red (traditionally Democratic) states voted Democratic in 1992
? Presidential Candidates States Visual Join • A visual join ( ) combines information from two or more database tables via portals Each presidential candidate has a portal containing the states that voted for him One join portal for every row in the candidates table
Outline • Introduction • Related Work • Background • Visual query results • Specifying visual queries • How VIQING generalizes other work • Status and future work
? User Interface: Performing a Visual Selection • Select graphical rows by rubber-banding • The result: • The canvas inside the portal has only 6 rows • Selection portals can be used for visual joins ... A portal that contains only the selected rows
? Performing a Visual Join • Drag . . . . . . . . and Drop Join 1960’s presidential candidates with political parties VIQING Chris Olston, UC Berkeley
? Parties Candidates States The Result: A Three-Level Visual Join • Now candidates are joined with political parties • We know which candidates belong to which parties • Can see trends for each party over time
? Parties Candidates States Visual Reordering • Visual queries have an ordering • Visual reordering can be performed after the join • To reorder: drop a portal onto a row of its child canvas
? Parties States Candidates Result of Visual Reordering • Now, parties join with states, which join with candidates • We can see the voting history of each state, by traditional party Georgia voted with the other Democrat states in ‘60, but against them in ‘64
Benefits of VIQING Queries • Easier to use than SQL • Can incrementally build and refine queries • Query manipulations on custom graphical representation of data, which is easier to understand than text • Don’t need to know SQL syntax -- just drag and drop (direct-manipulation)
Join Predicates • We have not discussed how VIQING knows what join predicates to use • In most cases, join predicates are equality • eg, candidate.party_name = party.party_name • These can be inferred from foreign key relationships defined at schema creation time • Alternatively, could specify more general join predicates with a tool like MS Access
92-TX-R Removing Intermediate Tables • Often, 2 tables join via an intermediate table • eg, Candidates Vote records States • However, we don’t want to see the intermediate table • we want Candidates States • To do this, visually remove intermediate • Drag intermediate portal away from the canvas
Outline • Introduction • Related Work • Background • Visual query results • Specifying visual queries • How VIQING generalizes other work • Status and future work
How VIQING Generalizes Other Work • VIQING generalizes nested report writers • Each level of nesting is a set of join portals • Drill-down performed by entering a join portal • VIQING generalizes master/detail forms • Master-detail relationship is a join • Data entry support could be added to DataSplash
Z = 5 Z = 10 Generalizing “Small Multiple” Graphs • VIQING can create “small multiple” graphs • Several views of a graph, indexed by a variable • This is a visual join between a canvas which contains several values for the index variable and the graph canvas
Status and Future Work • Implemented as an extension to DataSplash • Future work: • Support for more SQL query expressibility • aggregates, subqueries, etc. • An automatic way to expose meta-data • Which portals correspond to which tables? • Improved support for large data sets • This is a DataSplash issue, orthogonal to VIQING
? Summary • VIQING combines querying with visualization by using portals • Construct basic SQL queries by direct manipulation of pictorial data • Visual select, join, reorder, remove intermediate • Create nested reports, master/detail forms • Generate “small multiple” graphs
For more info... • Paper in Proc. Visual Languages 1998 • Or my web page: http://datasplash.cs.berkeley.edu/cao • Email me: cao@cs.berkeley.edu