web-dev-qa-db-fra.com

plus d'espace de spool dans la base de données

J'utilise Teradata. En cela, je n'ai plus d'espace de spool dans la base de données. Mon utilisation de la base de données est de 85% . Existe-t-il une relation entre cette erreur et le facteur d'utilisation de la base de données?.

8
user1601052

Les problèmes de Spool space se produisent lorsque vous avez une requête inefficace ou lorsque statistics n'a pas été correctement collecté sur les tables que vous utilisez. Cela peut également arriver avec des tables où l'index primaire était mal choisi (biais élevé). Spool est un attribut du compte d'utilisateur que vous utilisez pour vous connecter à l'environnement Teradata. ce n'est pas vraiment un attribut de la base de données elle-même.

La seule façon de savoir avec certitude est de consulter le plan EXPLAIN pour votre requête.

Si votre requête est inefficace, réécrivez-la. Si des statistiques doivent être collectées ou si l’index doit être modifié, contactez le DBA responsable des tables que vous utilisez.

Si une requête particulière vous donne une erreur "out of spool", mettez à jour cette question avec le texte complet de la requête.

6
BellevueBob

Je ne pouvais pas résoudre mon erreur "out of spool" par les méthodes ci-dessus. J'ai résolu l'erreur en déplaçant une fonction de classement dans sa propre petite table sans jointure ni colonnes superflues. 

1
JT Lehman

L'espace de spoule peut se produire lorsque vous utilisez des tables contenant des données volumineuses. Si vous utilisez plusieurs tables, vérifiez si vous utilisez des noms d'alias au lieu de faire référence à la table complète. L'utilisation de noms d'alias réduit les données par les jointures. Voyez également si des fonctions telles que oreplace, qui consomment plus de données, sont utilisées. Essayez d'utiliser des expressions régulières dans ce cas.

0