Analyse Python
Utilisez l’analyse Python pour transformer un résultat de requête ou effectuer un calcul statistique, par exemple une distribution des montants de commande. Vérifiez que l’entrée contient les lignes nécessaires : un résultat SQL plafonné ne représente pas toute la table source.
Ce qui s’exécute et ce que vous pouvez vérifier
Datarelix peut prévoir une étape Python. Elle reçoit les résultats des étapes précédentes, sans les identifiants de connexion à la base. Les bibliothèques d’analyse installées comprennent pandas, numpy, scipy et statsmodels. L’installation de paquets arbitraires n’est pas disponible.
Ouvrez les détails de l’exécution pour consulter le code généré, les références des entrées, les sorties et les messages enregistrés. Un calcul qui se termine sans erreur ne prouve pas que ses hypothèses conviennent. Pour une régression, vérifiez par exemple les variables et le traitement des valeurs manquantes avant d’interpréter le coefficient.
Les graphiques interactifs ordinaires utilisent une spécification déclarative. Demander un graphique ne nécessite donc pas à lui seul une étape Python. Voir questions et résultats.
Restrictions et limites d’exécution
Le Python généré s’exécute dans un environnement isolé, avec sorties réseau bloquées et accès aux fichiers restreint. Cet environnement impose des limites de ressources ; ces contrôles n’évaluent pas la validité statistique du calcul. La base est interrogée séparément, avec les permissions de la connexion.
| Limite | Valeur |
|---|---|
| Délai d’exécution | 90 secondes |
| Mémoire | 512 MB |
| Taille totale des artefacts | 10 MB |
Un dépassement de temps ou de mémoire peut nécessiter moins de lignes en entrée, ou un calcul préalable en SQL. Conservez la règle d’échantillonnage ou d’agrégation dans le rapport.
Examiner une étape Python
Ouvrez la trace d’exécution de la réponse et examinez :
- Le code Python généré.
- Le résultat antérieur référencé en entrée.
- Le tableau ou fichier produit.
- La sortie standard et les messages d’erreur capturés.
Contrôlez le nombre de lignes avant d’interpréter une statistique. Si SQL renvoie un échantillon limité, Python analyse cet échantillon. Pour un total ou taux sur toute la population, agrégez les données nécessaires en SQL au lieu de supposer le DataFrame complet.
Gardez explicites les règles de valeurs manquantes, regroupement et variables de régression. Les analystes examinent ces choix directement ; les utilisateurs métier précisent la définition attendue et font relire les hypothèses statistiques si nécessaire.
Réduire le travail sans changer la question
Sélectionnez les colonnes utiles, agrégez en SQL si cela convient et choisissez la période du rapport. Si un échantillonnage est nécessaire, notez sa méthode et ses limites. Retirer arbitrairement des lignes peut modifier le sens du résultat même si le calcul termine dans le délai.
En cas d’échec du calcul
Consultez l’erreur et l’étape concernée. Processing error (erreur de traitement) signifie que le code généré a échoué ; Processing timed out et Out of memory signifient qu’il a atteint l’une des limites ci-dessus. Datarelix corrige et relance une étape en échec un nombre limité de fois. Si le calcul échoue encore, reformulez la question ou demandez à un analyste de l’examiner.
Le dépannage explique chaque message d’erreur. Si vous contactez le support, indiquez l’erreur et la référence affichée avec elle. N’envoyez pas de mot de passe de base de données.