Comment la fonctionnalité SQL Pushback fonctionne-t-elle ?
Dernière mise à jour : 16 avr. 2025
Les principales cibles de la génération SQL sont les parties initiales d'un flux qui viennent après les nœuds d'importation de données. Lorsque SPSS Modeler trouve un nœud qui ne peut pas être compilé en SQL, SPSS Modeler extrait les données de la base de données et les traite.
Pendant la préparation et l'exécution du flux, le processus de génération de SQL se déroule comme suit :
- SPSS Modeler réorganise les flux pour déplacer les nœuds en aval dans la "zone SQL" lorsqu'il est prouvé qu'il est possible de le faire en toute sécurité.
- SPSS Modeler travaille des nœuds d'importation vers les nœuds terminaux, en construisant des expressions SQL de manière incrémentale.
- Cette phase s'arrête lorsque SPSS Modeler atteint un nœud qui ne peut pas être converti en SQL ou que le nœud terminal d'un flux est converti en SQL (par exemple, un nœud de table ou un nœud de graphe).
- Pour optimiser les performances, les nœuds peuvent être exclus du processus de génération SQL si la sortie de ce nœud n'est pas utilisée en aval dans les nœuds suivants. Par exemple, si un nœud dérivé crée une nouvelle colonne qui n'est pas utilisée dans un nœud matriciel en aval, le nœud dérivé est exclu de la génération SQL. Une icône SQL n'apparaît pas à côté du nœud Derive à la fin de la génération SQL.
Figure 1 : Génération SQL excluant les nœuds - A la fin de cette phase, chaque noeud comporte une instruction SQL si le noeud et ses prédécesseurs sont dotés d'un équivalent SQL.
- La validité du code SQL est vérifiée. SPSS Modeler travaille à partir des nœuds qui ont les équivalents SQL les plus compliqués, en remontant vers les nœuds d'importation. L'instruction SQL validée est choisie pour l'exécution.
- Les nœuds pour lesquels toutes les opérations ont généré des données SQL sont mis en évidence par une icône SQL à côté du nœud dans le canevas de flux. En fonction des résultats obtenus, vous pouvez réorganiser votre flux, le cas échéant, afin de tirer pleinement parti de l'exécution de la base de données.
Où les améliorations sont-elles apportées ?
Le pushback SQL améliore les performances de plusieurs opérations sur les données :
- Jointures (fusion par clé)
- Les opérations de jointure peuvent accroître l'optimisation au sein des bases de données.
- Agrégation
- Les noeuds Agréger, Proportion et Relations utilisent tous l'agrégation pour produire leurs résultats. Les données récapitulatives utilisent beaucoup moins de bande passante que les données d'origine.
- Sélection
- La sélection d'enregistrements sur la base de critères spécifiques réduit le nombre d'enregistrements.
- Tri
- Le tri des enregistrements est une activité très consommatrice de ressources qui est exécutée plus efficacement dans une base de données.
- Dérivation des champs
- Les nouveaux champs sont générés de façon plus efficace dans une base de données.
- Projection sur le terrain
- Le logiciel extrait uniquement, de la base de données, les champs nécessaires aux traitements suivants ; les exigences en termes de bande passante et de mémoire sont ainsi réduites. Idem pour les champs superflus des fichiers plats : même si le serveur doit lire ces champs, il ne leur affecte pas d'espace de stockage.
- Evaluation
- Le code SQL peut être généré à partir de modèles d'arbre de décisions, d'ensembles de règles, de régression linéaire et des modèles factoriels générés.
La rubrique a-t-elle été utile ?
0/1000