KIT | KIT-Bibliothek | Impressum | Datenschutz

Incremental Processing of Structured Data in Datalog

Pacak, André; Szabó, Tamás; Erdweg, Sebastian ORCID iD icon 1
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

Incremental computations react to input changes by updating their outputs. Compared to a non-incremental rerun, incremental computations can provide order-of-magnitude speedups, since often small input changes trigger small output changes. One popular means for implementing incremental computations is to encode the computation in Datalog, for which efficient incremental solvers exist. However, Datalog is very restrictive in terms of the data types it can process: Atomic data organized in relations. While structured tree and graph-shaped data can be encoded in relations, a naive encoding inhibits incrementality. In this paper, we present an encoding of structured data in Datalog that supports efficient incrementality such that small input changes are expressible. We explain how to efficiently implement and integrate this encoding into an existing incremental Datalog engine, and we show how tree diffing algorithms can be used to change the encoded data.


Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Proceedingsbeitrag
Publikationsdatum 01.12.2022
Sprache Englisch
Identifikator ISBN: 978-145039920-3
KITopen-ID: 1000188604
Erschienen in GPCE 2022 - Proceedings of the 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, Co-located with: SPLASH 2022; Auckland, Neuseeland, 06.-07.12.2022
Veranstaltung 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences (GPCE '22 2022), Auckland, Neuseeland, 06.12.2022 – 07.12.2022
Verlag Association for Computing Machinery (ACM)
Seiten S. 20-32
Schlagwörter Datalog; incremental computing; relational encoding; structured data
Nachgewiesen in Scopus
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page