<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Keynote Speech: Scalable Algorithms and Big-Data Applications by Recursive SQL Queries with Aggregates: a Datalog-enabled approach - Abstract</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Carlo Zaniolo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of California</institution>
          ,
          <addr-line>Los Angeles, CA 90095</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <abstract>
        <p>The use of basic SQL aggregates in recursive queries enables programmers to employ query languages to develop complete big-data applications, including graph, machine learning and data mining applications. To achieve this goal, programmers must make sure that their SQL queries can be converted into equivalent Datalog programs that combine rigorous declarative semantics with very eficient and highly scalable fixpoint based semantics. Thus, our approach provides methods and tools to verify that (i) queries with recursive aggregate have Stable Model Semantics (SMS) and (ii) such SMS can be represented via a fixpoint-based computation that is conducive to bulk-synchronous and stale-synchronous parallelism. We also provide techniques to restructure queries that satisfy (i) but not (ii) into queries that satisfy both.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Datalog programs</kwd>
        <kwd>Recursive SQL queries</kwd>
        <kwd>Stable Model Semantics (SMS)</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body />
  <back>
    <ref-list />
  </back>
</article>