# Optimizing Repetitive Computations of Database Triggers Within a Transaction

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.
Keywords :
Type de document :
Rapport
[Research Report] RR-2533, INRIA. 1995
Domaine :

Littérature citée [17 références]

https://hal.inria.fr/inria-00074145
Contributeur : Rapport de Recherche Inria <>
Soumis le : mercredi 24 mai 2006 - 14:36:46
Dernière modification le : vendredi 25 mai 2018 - 12:02:05
Document(s) archivé(s) le : jeudi 24 mars 2011 - 14:24:20

### Identifiants

• HAL Id : inria-00074145, version 1

### Citation

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

### Métriques

Consultations de la notice

## 117

Téléchargements de fichiers