Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contexte
Dans le cadre d'une prestation avec le Parc National des Ecrins pour le SINP, les performances de la mise à jour de la synthèse ont été évaluées avec un traitement de type
AFTER EACH ROW
et un traitement de typeAFTER EACH STATEMENT
(voir #40 pour plus de détails).Solution proposée
Au total, trois solutions ont été évaluées. Aucune ne permettait d'améliorer le temps d'exécution.
Il a également été identifié que le code pouvait être mutualisé permettant le passage de trois triggers/fonctions à un. Cela peut permettre un maintien plus facile du code.
La solution proposée ici correspond donc à la solution n°3 présentée dans l'issue #40 : "Conservation du traitement par ligne et mise en place d'un trigger unique quelque soit le type de données".
Perspectives
De nombreuses autres fonctions sont présentes dans le fichier
to_gnsynthese.sql
. Il pourrait être intéressant de les examiner pour identifier si elles pourraient être optimisées afin d'accélérer l'exécution globale de la mise à jour de la synthèse.