  The goal of Approximate Query Processing (AQP) is to provide very fast but
"accurate enough" results for costly aggregate queries thereby improving user
experience in interactive exploration of large datasets. Recently proposed
Machine-Learning based AQP techniques can provide very low latency as query
execution only involves model inference as compared to traditional query
processing on database clusters. However, with increase in the number of
filtering predicates(WHERE clauses), the approximation error significantly
increases for these methods. Analysts often use queries with a large number of
predicates for insights discovery. Thus, maintaining low approximation error is
important to prevent analysts from drawing misleading conclusions. In this
paper, we propose ELECTRA, a predicate-aware AQP system that can answer
analytics-style queries with a large number of predicates with much smaller
approximation errors. ELECTRA uses a conditional generative model that learns
the conditional distribution of the data and at runtime generates a small
(~1000 rows) but representative sample, on which the query is executed to
compute the approximate result. Our evaluations with four different baselines
on three real-world datasets show that ELECTRA provides lower AQP error for
large number of predicates compared to baselines.
