trade offs in static and dynamic query evaluation
play

Trade-offs in Static and Dynamic Query Evaluation Ahmet Kara, Milos - PowerPoint PPT Presentation

Trade-offs in Static and Dynamic Query Evaluation Ahmet Kara, Milos Nikolic Dan Olteanu, and Haozhe Zhang fdbresearch.github.io KOCOON Workshop 2019, Arras Static and Dynamic Query Evaluation Static Query Evaluation preprocessing


  1. Trade-offs in Static and Dynamic Query Evaluation Ahmet Kara, Milos Nikolic Dan Olteanu, and Haozhe Zhang fdbresearch.github.io KOCOON Workshop 2019, Arras

  2. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result 1 / 13

  3. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing time 1 / 13

  4. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time 1 / 13

  5. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time Dynamic Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time 1 / 13

  6. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time Dynamic Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time single-tuple update 1 / 13

  7. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time Dynamic Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time maintenance single-tuple update 1 / 13

  8. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time Dynamic Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time maintenance single-tuple update update time 1 / 13

  9. Static and Dynamic Query Evaluation Static Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time Dynamic Query Evaluation preprocessing enumeration data data query query base structure result preprocessing enumeration delay time maintenance single-tuple update update time We are interested in the trade-off between: preprocessing time - enumeration delay - (update time) 1 / 13

  10. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) 1 log N delay conjunctive 0 w 0 1 log N preprocessing time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  11. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) acyclic 1 log N delay conjunctive 0 w 0 1 log N preprocessing time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  12. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) free-connex O ( N )/ O (1) [CSL ’07] acyclic 1 log N delay conjunctive free-connex 0 w 0 1 log N preprocessing time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  13. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) hierarchical ? free-connex O ( N )/ O (1) [PODS ’20] [CSL ’07] This work acyclic 1 log N delay conjunctive free-connex 0 w 0 1 log N preprocessing time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  14. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) free-connex hierarchical O ( N )/ O (1) O ( N 1+(w − 1) ε )/ O ( N 1 − ε ) [CSL ’07] ε ∈ [0 , 1] acyclic acyclic 1 log N delay hierarchical conjunctive conjunctive free-connex free-connex 0 w 0 1 log N preprocessing time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  15. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) free-connex hierarchical O ( N )/ O (1) O ( N 1+(w − 1) ε )/ O ( N 1 − ε ) [CSL ’07] ε ∈ [0 , 1] w acyclic acyclic log N time 1 log N delay hierarchical 1 conjunctive conjunctive free-connex free-connex ε 0 0 0 1 w 0 1 log N preprocessing time preprocessing time O ( N 1+(w − 1) ε ) enumeration delay O ( N 1 − ε ) static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  16. Landscape of Static Query Evaluation Preprocessing time/Enumeration delay conjunctive [TODS ’15] O ( N w )/ O (1) ( α )-acyclic [CSL ’07] O ( N )/ O ( N ) free-connex hierarchical O ( N )/ O (1) O ( N 1+(w − 1) ε )/ O ( N 1 − ε ) [CSL ’07] ε ∈ [0 , 1] w acyclic acyclic log N time 1 log N delay hierarchical acyclic free-connex (w = 1) 1 conjunctive conjunctive free-connex free-connex ε 0 0 0 1 w 0 1 conjunctive log N preprocessing time preprocessing time O ( N 1+(w − 1) ε ) enumeration delay O ( N 1 − ε ) static width w = s ↑ [TODS ’15] or faqw [PODS ’16] 2 / 13

  17. Landscape of Dynamic Query Evaluation Preprocessing time/Update time/Enumeration delay conjunctive O ( N w )/ O ( N δ )/ O (1) [SIGMOD ’18] static width w = s ↑ [TODS ’15] or faqw [PODS ’16] dynamic width δ = delta queries static width [PODS ’20] max 3 / 13

  18. Landscape of Dynamic Query Evaluation Preprocessing time/Update time/Enumeration delay conjunctive O ( N w )/ O ( N δ )/ O (1) [SIGMOD ’18] ( α -)acyclic hierarchical ? free-connex [PODS ’20] This work static width w = s ↑ [TODS ’15] or faqw [PODS ’16] dynamic width δ = delta queries static width [PODS ’20] max 3 / 13

  19. Landscape of Dynamic Query Evaluation Preprocessing time/Update time/Enumeration delay conjunctive O ( N w )/ O ( N δ )/ O (1) [SIGMOD ’18] ( α -)acyclic hierarchical O ( N 1+(w − 1) ε )/ O ( N δε ) ∗ / O ( N 1 − ε ) free-connex ε ∈ [0 , 1] ( ∗ ): amortized update time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] dynamic width δ = delta queries static width [PODS ’20] max 3 / 13

  20. Landscape of Dynamic Query Evaluation Preprocessing time/Update time/Enumeration delay conjunctive O ( N w )/ O ( N δ )/ O (1) [SIGMOD ’18] ( α -)acyclic hierarchical δ 0 -hierarchical O ( N 1+(w − 1) ε )/ O ( N δε ) ∗ / O ( N 1 − ε ) free-connex w = 1, δ = 0 ε ∈ [0 , 1] [PODS ’17] ( ∗ ): amortized update time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] dynamic width δ = delta queries static width [PODS ’20] max 3 / 13

  21. Landscape of Dynamic Query Evaluation Preprocessing time/Update time/Enumeration delay conjunctive O ( N w )/ O ( N δ )/ O (1) [SIGMOD ’18] ( α -)acyclic hierarchical δ 0 -hierarchical O ( N 1+(w − 1) ε )/ O ( N δε ) ∗ / O ( N 1 − ε ) free-connex w = 1, δ = 0 ε ∈ [0 , 1] [PODS ’17] δ 1 -hierarchical w ≤ 2, δ = 1 ( ∗ ): amortized update time static width w = s ↑ [TODS ’15] or faqw [PODS ’16] dynamic width δ = delta queries static width [PODS ’20] max 3 / 13

  22. Contribution 1: Recovery of Prior Approaches log N update time δ conjunctive 1 0 1 log N delay (1 , 0 , 1) w log N preprocessing time 4 / 13

  23. Contribution 1: Recovery of Prior Approaches log N update time δ conjunctive δ 0 -hierarchical 1 0 1 (w = 1 , δ = 0) log N delay (1 , 0 , 1) w log N preprocessing time 4 / 13

  24. Contribution 1: Recovery of Prior Approaches log N update time δ conjunctive hierarchical δ 0 -hierarchical 1 0 1 (w = 1 , δ = 0) log N delay (1 , 0 , 1) w log N preprocessing time 4 / 13

  25. Contribution 1: Recovery of Prior Approaches log N update time w log N time δ δ conjunctive 1 hierarchical ε 0 0 1 preprocessing time O ( N 1+(w − 1) ε ) δ 0 -hierarchical 1 0 1 amortized update time O ( N δε ) (w = 1 , δ = 0) log N delay (1 , 0 , 1) enumeration delay O ( N 1 − ε ) w log N preprocessing time 4 / 13

  26. Contribution 1: Recovery of Prior Approaches log N update time w log N time δ δ δ 0 -hierarchical conjunctive (w = 1, δ = 0) 1 hierarchical ε 0 0 1 conjunctive preprocessing time O ( N 1+(w − 1) ε ) δ 0 -hierarchical 1 0 1 amortized update time O ( N δε ) (w = 1 , δ = 0) log N delay (1 , 0 , 1) enumeration delay O ( N 1 − ε ) w log N preprocessing time Recovers prior approach for conjunctive queries by setting ε = 1. Recovers prior approach for δ 0 -hierarchcal queries by setting ε = 1. 4 / 13

  27. Contribution 2: Sublinear Update Time and Delay log N update time w log N time δ δ 1 Sublinear 1 (0 , 1 , 1) ε 0 0 1 preprocessing time O ( N 1+(w − 1) ε ) 1 0 1 δ 0 -hierarchical log N delay (1 , 0 , 1) amortized update time O ( N δε ) w enumeration delay O ( N 1 − ε ) log N preprocessing time First approach that allows sublinear amortized update time and sublinear enumeration delay for hierarchical queries. 5 / 13

Recommend


More recommend