the power of how-to queries joint work with dan suciu (university of washington) alexandra meliou
TRANSCRIPT
The Power of How-to Queries
joint work with Dan Suciu (University of Washington)
Alexandra Meliou
Hypothetical (What-if) Queries
Brokerage companyDB
Key Performance Indicators (KPI)
Example from [Balmin et al. VLDB’00]:“An analyst of a brokerage company wants to know what would be the effect on the return of customers’ portfolios if during the last 3 years they had suggested Intel stocks instead of Motorola.”
change something in the source (hypothesis)
observe the effect in the target
forward
How-To Queries
Brokerage companyDB
Key Performance Indicators (KPI)
Modified example:“An analyst wants to ask how to achieve a 10% return in customer portfolios, with the least number of changes.”
find changes to the source that achieve the desired effect
declare a desired effect in the target
reverse
TPC-H example A manufacturing company keeps records of
inventory orders in a LineItem table. KPI: Cannot order more than 8% of the inventory
from any single country
Can reassign orders to new suppliers as long as the supplier can supply the part
Minimize the number of changes
(constraints)
(variables)
(optimization objective) constraint optimization
extract data
Constraint Optimization on Big Data
DB
construct optimization model
this is for a set of 10 lineitems and 40
suppliers
Mixed Integer Programming (MIP)
solver
transform into data updates
MathProg
Impractical!
Demo: Tiresias
a tool that makes how-to queries practical
Tiresias: How-To Query Engine
DBMS
MIPsolver
Tiresias
TiQL (Tiresias Query Language)
Declarative interface, extension to Datalog
Overview
MathProgor AMPL
TiQL
Visualizations
MathProg or AMPL
TiQL
Visualizations
Overview
Demo
Demo
MathProgor AMPL
TiQL
Visualizations
Overview
Language semantics
Evaluation of a TiQL program: Translation from TiQL to linear constraints
Performance optimizations
Optimizing Performance Model optimizer
eliminates variables, constraints, and parameters uses key constraints, functional dependencies, and
provenance
Partitioning optimizerSignificantly faster than letting the MIP solver do it
Evaluation of the Model Optimizer
baseline
with optimization
Evaluation of Tiresias Partitioning
10k tuples 1M tuples
granularity of partitioning
complex dependency on the granularity of partitioning
Next steps Non-partitionable problems and approximations Soft constraints, diversification of results Interactive visualizations, feedback-based problem
generation Applications
Business intelligence, strategy planning View updates Data cleaning
Take-aways Databases should support how-to queries Data-driven optimizations could benefit the
performance of external tools