Source-linked AI summary
Effortless Data Exploration with zenvisage: An Expressive and Interactive Visual Analytics System
Tarique Siddiqui, Albert Kim, John Lee, Karrie Karahalios, Aditya Parameswaran
TL;DR
Visual exploration can require manually examining tens of thousands of visualizations, making desired patterns cumbersome to find. zenvisage introduces ZQL to compose, filter, compare, and sort visualization collections, with experiments showing interactive performance on moderate and large datasets.
Problem
Manual examination of potentially tens of thousands of visualizations makes testing a single hypothesis in large or complex datasets unsustainable.
Method
zenvisage uses ZQL to compose, filter, compare, and sort visualization collections through iterators and extensible computation functions.
Results
The system achieved a 50× speedup with Vertica over PostgreSQL and sub-second responses for many queries on a 1.5GB dataset.
Takeaways & Limitations
ZQL provides a general mechanism for sifting through visualization collections to identify desired trends.
Takeaways & Limitations
ZQL cannot create derived attributes or values, limiting prediction and visualization composition across combinations of attributes.
Abstract
from arXiv · showhide
Data visualization is by far the most commonly used mechanism to explore data, especially by novice data analysts and data scientists. And yet, current visual analytics tools are rather limited in their ability to guide data scientists to interesting or desired visualizations: the process of visual data exploration remains cumbersome and time-consuming. We propose zenvisage, a platform for effortlessly visualizing interesting patterns, trends, or insights from large datasets. We describe zenvisage's general purpose visual query language, ZQL ("zee-quel") for specifying the desired visual trend, pattern, or insight - ZQL draws from use-cases in a variety of domains, including biology, mechanical engineering, climate science, and commerce. We formalize the expressiveness of ZQL via a visual exploration algebra, and demonstrate that ZQL is at least as expressive as that algebra. While analysts are free to use ZQL directly, we also expose ZQL via a visual specification interface that we describe in this paper. We then describe our architecture and optimizations, preliminary experiments in supporting and optimizing for ZQL queries in our initial zenvisage prototype, and a user study to evaluate whether data scientists are able to effectively use zenvisage for real applications.
1. INTRODUCTION
Current visualization tools make data exploration tedious because analysts must manually inspect potentially tens or hundreds of thousands of visualizations to find desired patterns. zenvisage addresses this problem by automating pattern search over visualization collections through ZQL, an interactive visual query language and system.
- Motivation: Manual examination of large visualization collections makes testing hypotheses and discovering desired patterns unsustainable and time-consuming.The paper notes that even moderately sized datasets may require inspecting tens of thousands of visualizations for a single hypothesis.
- Motivation: Collaborators in engineering, advertising, genomics, environmental science, server monitoring, and mobile apps faced domain-specific tasks requiring comparisons across many visualizations.Examples include finding increasing solvent trends, anomalous keywords or sensors, gene pairs explaining outcomes, and unusual application metrics.
- Key Insight: zenvisage automates the search for desired visual patterns by applying common operations to collections of visualizations, including composition, filtering, comparison, and sorting.The system is intended to capture recurring data-exploration needs across the collaborator scenarios.
- Key Challenges: ZQL operates on collections of visualizations rather than directly on data, treating aggregate visual queries as first-class objects.This model creates challenges such as composing modified visualizations and drilling down into particular visualizations within a collection.
- Key Challenges: The platform must support interactive ZQL specification and efficient backend execution because a single query can generate 10,000s of visualizations.Executing each visualization independently as an aggregate query could take several hours, motivating specialized interaction and execution support.
2. QUERY LANGUAGE
ZQL treats visualizations as first-class objects, enabling users to specify, compose, filter, compare, and explore collections of visualizations through a high-level query language. Its expressive operations support trend and similarity analysis, while its scope excludes several data-transformation and visualization-processing capabilities.
- Visualization specification: ZQL specifies visualizations through X, Y, Z, and Viz columns that encode axes, data subsets, visualization types, and binning or aggregation.A visualization comprises five components: x-axis, y-axis, data subset, visualization type, and axis binning or aggregation functions.
- Visualization collections: Users can retrieve multiple visualizations by using multiple rows or iterating over values in the X, Y, Z, or Viz columns.Shared axis variables preserve matching traversal order when multiple visualization collections must be compared across a dimension.
- Visual analysis operators: Pluggable T and D functions let ZQL measure visual properties or pairwise dissimilarity, while argmax, argmin, argany, and limiters select results.T can measure growth, skewness, peaks, or noisiness; D can use Euclidean distance, Earth Mover’s Distance, or Kullback-Leibler divergence.
- Core capabilities: ZQL operates on collections of visualizations as first-class objects, supporting composition, filtering, comparisons, and identification of desired trends.Its operations work one layer above aggregate group-by queries on data and can be chained through dimension-based iterators.
- Limitations: ZQL cannot create derived attributes or values beyond binning and aggregation, limiting prediction and excluding recursion, data modification, arbitrary nesting, dimensionality reduction, and several visualization operations.Additional unsupported operations include multidimensional visualizations, intermediate variable definitions, visualization merging, and processing not expressible through T, D, or the black box.
3. EXPRESSIVENESS
The paper formalizes ZQL’s expressive power through a visual exploration algebra and proves that ZQL is complete with respect to well-defined functional primitives. The algebra models visual groups and ordered collections, while ZQL can express at least all algebraic operations and extends beyond the algebra.
- Visual exploration algebra: The visual exploration algebra operates on visualization sets using functional primitives T and D, rather than depending on visualization data representations or rendering details.T operates on one visualization and D operates on a pair, both returning real-valued numbers.
- Ordered-bag operations: Ordered-bag semantics preserve visualization relevance ordering while supporting indexing, union, selection, projection, difference, intersection, duplicate elimination, and cross products.The algebra adapts relational operators to ordered bags so users can see the most relevant visualizations first.
- Visual universe: The algebra represents possible visualizations through a visual universe, whose visual sources specify data selections and x- and y-axis attributes.A visual group is any subset of the visual universe, while a visual source represents a renderable visualization from a selected data source.
- Expressiveness result: ZQL is visual exploration complete with respect to any well-defined functional primitives T and D.The paper states this as Theorem 3.1, establishing that VECT,D(ZQL) is true.
- Expressibility lemmas: ZQL expresses visual-group constraints, functionals, intervals, duplicate elimination, union, difference, attribute operations, and pairwise functionals, establishing at least the algebra’s expressive power.The paper gives lemmas showing each listed algebraic operation is expressible in ZQL.
- Beyond the algebra: ZQL is more expressive than the visual exploration algebra because it supports nested iteration in the Process column, while the algebra remains a minimum expressiveness metric.Table 12 exemplifies this additional nesting capability.
4. QUERY EXECUTION
zenvisage compiles ZQL into SQL queries and processing tasks organized as a dependency-aware DAG, then executes the plan through collection retrieval and process evaluation. Optimizations reduce runtime primarily by improving collection-node execution through parallelization, speculation, and query combining.
- Basic translation and execution: ZQL queries compile into DAG-based plans whose collection nodes retrieve visualization data and process nodes execute dependent operations.The engine creates nodes for collections and processes, connects dependency edges, and executes nodes when their parents are complete.
- Basic translation and execution: The basic translator issues grouped and ordered SQL queries for visualization collections, packs results into multidimensional arrays, and generates nested pseudocode loops for process expressions.Collection queries use GROUP BY and ORDER BY across visualization dimensions, while process code is generated from operations such as argmax, argmin, max, min, sum, and product.
- Execution optimizations: The system focuses optimization on collection nodes because their SQL queries dominate runtime, while also providing a process-node optimization for process-intensive queries.The optimization strategy begins with simpler schemes before adding more sophisticated variations.
- Execution optimizations: Speculation improves runtime by retrieving extra data when blocking on database retrieval costs more, thereby compounding the benefits of parallelization.Its tradeoff is increased data retrieval, but the reported runtime benefit comes from avoiding retrieval waits.
- Execution optimizations: Query combining becomes less effective as combined queries accumulate group-by values superlinearly, and selecting the minimum number of bounded combinations is NP-hard.Shared group-by attributes can make combining more beneficial, motivating the effective increase in group-by values metric, EFGV.
5. zenvisage SYSTEM DESCRIPTION
zenvisage provides a lightweight web-based front end for composing ZQL queries and exploring their resulting visualizations. It supports both a query-table workflow and a simpler menu-and-sketching interface.
- Front-end: The lightweight web client lets users compose ZQL queries through a graphical interface and view the resulting visualizations.The front end is implemented as a web-based client application.
- Front-end: Resulting visualizations are rendered at the bottom of the interface using Vega-Lite.
- Front-end: Users can enter ZQL queries in an auto-completing table or switch to a drop-down menu interface with a sketching canvas.The query table can also be hidden for the simpler interaction mode.
6. EXPERIMENTAL STUDY
The experiments show that ZQL optimizations substantially reduce query runtimes, while disk-based I/O is the primary bottleneck. Replacing PostgreSQL with cached Vertica yields much faster execution, including sub-second responses on large datasets.
- Overall runtime evaluation: Across synthetic and realistic queries, the optimizations provided speedups of up to 3×, while batching queries reduced the impact of fixed per-batch costs.Each batch incurred a fixed cost of 1635 ms, motivating packing as many queries as memory allowed.
- Query characteristics: SMARTFUSE runtimes grew sublinearly with query-chain length, whereas NO-OPT and SPECULATE runtimes grew at least linearly.The result was attributed to SMARTFUSE’s query-combining optimization.
- Optimization performance: Realistic queries achieved a 45% runtime reduction from NO-OPT to PARALLEL, followed by 15–20% reductions at each subsequent optimization stage.The optimization sequence was NO-OPT, PARALLEL, SPECULATE, and SMARTFUSE.
- Query characteristics: As the number of independent chains increased, PARALLEL, SPECULATE, and SMARTFUSE remained nearly constant while NO-OPT grew linearly.Concurrent SQL queries grew much more slowly than sequentially issued queries.
- I/O bottleneck and database backend: 50× speedup over PostgreSQL enabled sub-second responses for many queries, even on a 1.5GB dataset.With 120M records (11GB), only 70% of the data could be cached, but runtimes were still reduced.
7. USER STUDY
The user study evaluated zenvisage against visual analytics tools and other data-analysis systems using exploration tasks on a large housing dataset. Participants found zenvisage faster and more accurate for finding desired visualizations, while also identifying integration and usability improvements.
- Study Design: The study recruited 12 graduate students and compared zenvisage with a purpose-built visual-analytics baseline on eight exploration tasks using a 245K-row housing dataset.The tasks covered filtering, sorting, range, distribution, anomaly, correlation, clustering, and visualization-related exploration activities.
- Finding 1: Participants found zenvisage faster and more accurate than existing visualization tools for exploration tasks requiring multiple visualizations and comparisons.The baseline involved considerable manual exploration, whereas zenvisage automated the search for desired visualizations; accuracy with zenvisage was close to 100%.
- Finding 2: All participants said zenvisage added exploration value not encompassed by their regular databases, data-mining tools, or programming languages.ZQL combined with inputs from the sketching canvas was reported as effective for finding similar patterns.
- Finding 3: Participants suggested exposing common trends directly, adding guidance for new users, and improving the interface’s usability features and visual refinement.Requested additions included bookmarking and search history, alongside a custom query builder and drag-and-drop access to patterns such as outliers.
8. RELATED WORK · 9. CONCLUSION
The related-work discussion positions zenvisage against visualization tools, SQL-backed analytics, OLAP browsing, and database optimization techniques, emphasizing its broader visual exploration capabilities and external query rewrites.
- 8. RELATED WORK: The related-work section organizes comparisons across visualization tools, statistical and programming systems, relational databases, and overlapping analytics tools.This framing establishes the scope of the paper’s comparison with prior work.
- 8. RELATED WORK: Unlike tools such as ShowMe, Spotfire, and Tableau, zenvisage targets collections of visualizations rather than displaying one visualization at a time.The paper characterizes existing tools as less powerful because they do not operate on visualization collections.
- 8. RELATED WORK: Although relational databases can express some ZQL queries through multiple SQL queries and advanced constructs, those queries are cumbersome and unfamiliar to users.The discussion specifically mentions procedural SQL, common table expressions, and window functions, while reporting that SQL-experienced study participants preferred Python.
- 8. RELATED WORK: Figure 9 illustrates a ZQL-versus-SQL task for finding the top 10 similar products for each product while varying the product count from 10 to 5000.The figure caption frames the comparison as an OLAP-style browsing task involving similarity search across changing dataset sizes.
- 8. RELATED WORK: Prior OLAP-browsing work suggests informative raw aggregates or explanations of specific data-cube cells, but does not address ZQL’s full exploration capabilities.The paper presents this as a narrower problem that permits simpler techniques.
- 8. RELATED WORK: Unlike database techniques requiring substantial engine modifications, zenvisage uses syntactic rewriting techniques outside the relational backend.The related-work discussion contrasts zenvisage with systems lacking full cost-based optimization or relying on hand-tuned plans.