Skip to main content

Foundations of Algebraic and Dynamic Data Management Systems

Final Report Summary - ALGILE (Foundations of Algebraic and Dynamic Data Management Systems)

This ERC project developed a mathematical foundation for database systems based on algebra, and specifically a group-theoretic foundation for changes to databases (database updates). This theory admits cleaner, more elegant, and more efficient ways of handling change-related problems in database systems, such as data warehouse loading in analytical database systems and transaction processing in OLTP systems. Specifically, for analytical database systems, we have created elegant, compositional (and thus easily extensible) techniques for automatically turning queries into online algorithms that efficiently maintain a query result under change to the database; for transactional database systems, we have developed techniques based on algebra and program analysis for intelligently avoiding naïve recomputation of transactions when other transactions are aborted. Furthermore, we have created domain-specific compiler infrastructure to make it easier to build new highly-efficient database systems; this compiler infrastructure allows systems developers to profit from our research results without having to be experts on them; instead, relevant database systems code is automatically generated.

In addition to published research results, the project has created several software artifacts which are now publicly available or in the process of being made publicly available, which facilitate the creation of highly efficient database code, such as the SC domain-specific compiler framework for software systems development, the DBToaster query incrementalization engine, the LegoBase analytical query engine, and the LAGO program synthesizer.