Accessibilité des données

Le mode d'exécution choisi affecte la connexion entre règles et données.

En règle générale :

  • En mode séquentiel, utilisez de préférence une connexion directe aux données, avec les mots clés from ou in plus des paramètres d'ensemble de règles ou des variables.

  • En mode RetePlus ou Fastpath, favorisez l'évaluation dans la mémoire de travail.

Le tableau suivant décrit succinctement l'effet du passage d'un mode à un autre sur l'accessibilité des données.

Tableau 1. Effet du changement de mode d'exécution
Nature du changement Effet sur l'accessibilité des données
RetePlus -> séquentiel

Le mode séquentiel présente des limitations par rapport à RetePlus.

Lorsque les règles sont reliées aux données via la mémoire de travail, l'exécution des traces est différente entre les modes RetePlus/Fastpath d'un côté et le mode séquentiel de l'autre.

  • RetePlus : foreach règle par priorité, tous les tuples.

  • Séquential : foreach tuple, toutes les règles par priorité statique.

Lorsque les règles sont reliées aux données via les mots clés in et from, les données sont généralement situées dans des paramètres d'ensemble de règles et des variables. Seule la trace d'exécution doit différer, comme décrit plus haut.

RetePlus -> Fastpath Fastpath est un algorithme de type séquentiel, avec des priorités statiques et sans support de mise à jour (update). Toutefois, le passage au mode Fastpath ne devrait pas affecter la trace d'exécution.
Fastpath -> séquentiel

Fastpath est moins limité que le mode séquentiel sur le plan des conditions des règles. La trace d'exécution de Fastpath est la même que celle de RetePlus.

Lorsque les règles sont reliées aux données via la mémoire de travail, les traces d'exécution diffèrent comme suit :

  • Fastpath : foreach règle par priorité, tous les tuples.

  • Séquential : foreach tuple, toutes les règles par priorité statique.

Fastpath -> RetePlus Pas d'effet.
Séquentiel -> RetePlus Seule la trace d'exécution diffère, comme décrit plus haut pour le passage du mode RetePlus au mode séquentiel.
Séquentiel -> Fastpath Seule la trace d'exécution diffère, comme décrit plus haut pour le passage du mode RetePlus au mode séquentiel.