optimisation SQL

L'une des fonctionnalités les plus puissantes d' IBM® SPSS® Modeler est la possibilité d'effectuer de nombreuses opérations de préparation et d'exploration de données directement dans la base de données. En générant du code SQL qui peut être renvoyé à la base de données pour exécution, de nombreuses opérations, telles que l'échantillonnage, le tri, le calcul de nouveaux champs et certains types de graphiques, peuvent être effectuées dans la base de données plutôt que sur l'ordinateur IBM SPSS Modeler ou IBM SPSS Modeler Server . Lorsque vous travaillez avec des jeux de données volumineux, ces répercussions peuvent améliorer considérablement les performances, et ce de plusieurs manières :

  • En réduisant la taille de l'ensemble de résultats à transférer du SGBD vers IBM SPSS Modeler. Lorsque des ensembles de résultats volumineux sont lus via un pilote ODBC , des inefficacités d'E-S réseau ou de pilote peuvent se produire. Pour cette raison, les opérations qui bénéficient le plus de l'optimisation SQL sont la sélection et l'agrégation de lignes et de colonnes (noeuds Sélectionner, Echantillonner, Agréger). Ces opérations réduisent généralement la taille du fichier à transférer. Pour améliorer davantage les performances, il est également possible de mettre les données en cache dans une table temporaire de la base de données, au niveau de points critiques du flux (par exemple, après un noeud Fusionner ou Sélectionner).
  • En utilisant les performances et l'évolutivité de la base de données. Efficacité accrue : les SGBD bénéficient en effet souvent de la technique du traitement parallèle, d'un matériel plus puissant, d'une gestion plus évoluée du stockage sur disque et de la présence d'index.

Compte tenu de ces avantages, IBM SPSS Modeler est conçu pour maximiser la quantité de code SQL généré par chaque flux de sorte que seules les opérations qui ne peuvent pas être compilées en code SQL soient exécutées par IBM SPSS Modeler Server. Toutefois, le langage SQL standard (SQL-92) ne permet pas de tout exprimer. Certaines opérations risquent donc de ne pas être prises en charge. Pour plus d'informations, voir Conseils pour l'optimisation de la génération SQL.

Remarque: gardez à l'esprit les informations suivantes lorsque vous utilisez SQL:
  • En raison de différences mineures dans l'implémentation SQL, les flux qui s'exécutent dans une base de données peuvent renvoyer des résultats légèrement différents lorsqu'ils s'exécutent dans IBM SPSS Modeler. Pour ces mêmes raisons, ces différences peuvent également varier en fonction du fournisseur de base de données. Par exemple, en fonction de la configuration de la base de données pour la sensibilité à la casse dans la comparaison de chaînes et le classement de chaînes, les flux IBM SPSS Modeler qui s'exécutent à l'aide de SQL pushback peuvent produire des résultats différents de ceux qui s'exécutent sans SQL pushback. Contactez l'administrateur de votre base de données pour obtenir des conseils sur la configuration de votre base de données. Pour optimiser la compatibilité avec IBM SPSS Modeler, nous vous recommandons de vous assurer que les comparaisons de chaînes de base de données sont sensibles à la casse.
  • La modélisation de base de données et l'optimisation SQL nécessitent que la connectivité IBM SPSS Modeler Server soit activée sur l'ordinateur IBM SPSS Modeler . Lorsque ce paramètre est activé, vous pouvez accéder aux algorithmes de base de données, envoyer SQL directement depuis IBM SPSS Modeleret accéder à IBM SPSS Modeler Server. Pour vérifier le statut actuel de la licence, dans le menu IBM SPSS Modeler , accédez à:
    • Aide > A propos de > Détails supplémentaires

      Si la connectivité est activée, vous voyez l'option Activation du serveur dans l'onglet Etat de la licence.

      Pour plus d'informations, voir Connexion à IBM SPSS Modeler Server .

  • Lorsque vous utilisez IBM SPSS Modeler pour générer du SQL, le résultat qui utilise SQL push back peut ne pas être cohérent avec IBM SPSS Modeler natif sur certaines plateformes (Linux/zLinux, par exemple). car la virgule flottante est traitée différemment sur les différentes plateformes.
Remarque: Lorsque vous exécutez des flux dans une base de données Netezza , les détails de date et d'heure sont extraits de cette base de données. Ce comportement peut différer de la date et de l'heure locale ou IBM SPSS Modeler Server si, par exemple, la base de données se trouve sur une machine située dans un autre pays ou fuseau horaire.

Configuration requise pour les bases de données

Pour plus d'informations sur les bases de données et les pilotes ODBC pris en charge et testés pour une utilisation avec IBM SPSS Modeler, consultez les matrices de compatibilité des produits sur le site de support technique de l'entreprise à l'adresse http://www.ibm.com/support.

Vous pouvez améliorer davantage les performances en utilisant la modélisation de base de données.

configuration du pilote ODBC

Pour vous assurer que les détails de l'heure (tels que HH:MM: SS) sont traités correctement lors de l'utilisation de SQL 2012 sur des systèmes Windows 32bit , lors de la configuration de votre pilote ODBC SQL Server Wire Protocol Driver, sélectionnez les options Activer les identificateurs entre guillemets et Extraire TWFS comme heure .