Optimizing Repetitive Computations of Database Triggers Within a Transaction

Françoise Fabret 1 Eric Simon 1
1 RODIN - Database Systems
Inria Paris-Rocquencourt
Abstract : We study the problem of optimizing costly repetitive evaluations of database triggers within a transaction. We first show that well known incremental rule evaluation algorithms such as RETE or TREAT are inappropriate for that because they do not consider how repetitive triggerings of rules can be caused by the structure of transaction programs. Therefore, their decision of precomputing and caching some expressions in rule conditions for a later reuse can be erroneous. We assume that transaction programs are represented by their flow graph. We then propose an algorithm that, given a transaction's flow graph, and a set of triggers, constructs a compact data structure called a triggering graph. First, for each possible transaction execution, this graph indicates which rules may be triggered. Second, for every rule $r$ capable of being triggered and fired several times, the graph represents the real «influence» of both the transaction and the rules on $r$. This provides the necessary information for deciding which subexpressions of $r$ are most profitable to cache for the considered transaction.
Type de document :
[Research Report] RR-2533, INRIA. 1995
Liste complète des métadonnées

Littérature citée [17 références]  Voir  Masquer  Télécharger

Contributeur : Rapport de Recherche Inria <>
Soumis le : mercredi 24 mai 2006 - 14:36:46
Dernière modification le : mardi 17 avril 2018 - 11:28:24
Document(s) archivé(s) le : jeudi 24 mars 2011 - 14:24:20



  • HAL Id : inria-00074145, version 1



Françoise Fabret, Eric Simon. Optimizing Repetitive Computations of Database Triggers Within a Transaction. [Research Report] RR-2533, INRIA. 1995. 〈inria-00074145〉



Consultations de la notice


Téléchargements de fichiers