The Magic of Pushing Extrema into Recursion: Simple, Powerful Datalog Programs

We introduce a novel query optimization method based on pushing extrema and other integrity constraints into recursion. This optimization produces an efficient operational semantics for the goals declaratively specified by the original program that is stratified with respect to negation and aggregates. Complex algorithms can now be specified via simpler programs, and then implemented via optimized rules that use min and max aggregates in the seminaive fixpoint computation to achieve safe and efficient execution. This optimization dovetails with recent advances that entail the use of monotonic aggregates in recursion and leads to efficient implementation, as demonstrated by the scalable Datalog systems we have recently developed.

[1]  Carlo Zaniolo,et al.  Big Data Analytics with Datalog Queries on Spark , 2016, SIGMOD Conference.

[2]  Carlo Zaniolo,et al.  Extending the power of datalog recursion , 2012, The VLDB Journal.

[3]  Carlo Zaniolo,et al.  Graph Queries in a Next-Generation Datalog System , 2013, Proc. VLDB Endow..

[4]  Teodor C. Przymusinski Perfect Model Semantics , 1988, ICLP/SLP.

[5]  Carlo Zaniolo,et al.  Improving the Power, Performance and Usability of Datalog by Pushing Constraints into Recursion , 2016 .

[6]  Carlo Zaniolo,et al.  Main memory evaluation of recursive queries on multicore machines , 2014, 2014 IEEE International Conference on Big Data (Big Data).

[7]  Monica S. Lam,et al.  Distributed SociaLite: A Datalog-Based Language for Large-Scale Graph Analysis , 2013, Proc. VLDB Endow..

[8]  Bharat Bhargava,et al.  Advanced Database Systems , 1993, Lecture Notes in Computer Science.

[9]  Carlo Zaniolo,et al.  Parallel Bottom-Up Evaluation of Logic Programs: DeALS on Shared-Memory Multicore Machines , 2015, ICLP.

[10]  Magdalena Balazinska,et al.  Asynchronous and Fault-Tolerant Recursive Datalog Evaluation in Shared-Nothing Engines , 2015, Proc. VLDB Endow..

[11]  Carlo Zaniolo,et al.  A declarative extension of horn clauses, and its significance for datalog and its applications , 2013, Theory and Practice of Logic Programming.

[12]  Christos Faloutsos,et al.  PEGASUS: A Peta-Scale Graph Mining System Implementation and Observations , 2009, 2009 Ninth IEEE International Conference on Data Mining.