Article
Version 1
Preserved in Portico This version is not peer-reviewed
A Differential Datalog Interpreter
Version 1
: Received: 26 July 2023 / Approved: 28 July 2023 / Online: 31 July 2023 (03:17:00 CEST)
A peer-reviewed article of this Preprint also exists.
Stephenson, M.J. A Differential Datalog Interpreter. Software 2023, 2, 427-446. Stephenson, M.J. A Differential Datalog Interpreter. Software 2023, 2, 427-446.
Abstract
The core reasoning task for datalog engines is materialization, the evaluation of a datalog program over a database alongside its phys- ical incorporation into the database itself. The de-facto method of computing it, is through the recursive application of inference rules. Due to it being a costly operation, it is a must for datalog engines to provide incremental materialization, that is, to adjust the computation to new data, instead of restarting from scratch. One of the major caveats, is that deleting data is notoriously more involved than adding, since one has to take into account all possible data that has been entailed from what is being deleted. Differential Dataflow is a computational model that provides efficient incremen- tal maintenance, notoriously with equal performance between ad- ditions and deletions, and work distribution, of iterative dataflows. In this paper we investigate the performance of materialization with three reference datalog implementations, out of which one is built on top of a lightweight relational engine, and the two others are differential-dataflow and non-differential versions of the same rewrite algorithm, with the same optimizations.
Keywords
datalog; incremental view maintenance; differential dataflow
Subject
Computer Science and Mathematics, Computer Science
Copyright: This is an open access article distributed under the Creative Commons Attribution License which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Comments (0)
We encourage comments and feedback from a broad range of readers. See criteria for comments and our Diversity statement.
Leave a public commentSend a private comment to the author(s)
* All users must log in before leaving a comment