[SGBD] Stats Oracle : Comment ça marche ? Que faire ?

Stats Oracle : Comment ça marche ? Que faire ? [SGBD] - SQL/NoSQL - Programmation

Marsh Posté le 08-12-2004 à 19:21:37    

En gros :
 
On a un site web dont la majorité des données sont mises à jour tous les matins à 5 heures. Il y a une inactivité TOTALE de la base pendant tout ce temps (seul un select sur une unique table contenant une unique ligne, qui n'est pas impactée par le refresh peut être effectuée : c'est la table qui indique si le site est ouvert ou fermé, et s'il est fermé la génération des pages dynamiques est stoppée)
 
Le refresh se fait par SQL Loader.
A la fin du SQL Loader, une PS tourne afin de mettre à jour des données (toutes les données ne sont pas rafraîchies brutalement)
 
A la fin de ce traîtement, les stats Oracle semblent être à la ramasse.
 
Ci-dessous mes échanges avec un DBA à propos de l'erreur.
 

Code :
  1. Arjuna/Med... hello
  2. Syed/... hI
  3. Syed/... I checked with the indexes
  4. Syed/... they are showing valid
  5. Arjuna/Me... yes, i tried to do a simple query using the indexes, and it works fine. but the whole query takes 15 minutes. on dev environement, with many more lignes, it takes 1 or 2 seconds. I don't understand.
  6. Arjuna/Me... and then, if we don't use the "eve.sigtie = '000068'" filter, the query is very fast
  7. Arjuna/Me... don't understand
  8. Syed/... yes i also did the checking
  9. Syed/... i generated the EXPLAIN PLAN for the query on both Devl and Prod
  10. Syed/... trying to analyze from there
  11. Arjuna/Me... ok
  12. Arjuna/Me... are you still here ?
  13. Arjuna/Me... (and alive ?)
  14. Syed/H... yes :
  15. Arjuna/Me... :)
  16. Syed/... :-(
  17. Arjuna/Me... you don't see anything ?
  18. Syed/... Till now nothing
  19. Arjuna/Me... maybe you should try to drop the indexes and create it again (even if it seems to be ok, they should be corrupted - thats the only cause I see)
  20. Syed/... out of 5 tables, there is no data in 3 tables in production
  21. Syed/... ok
  22. Arjuna/Me... yes, it's normal
  23. Arjuna/Me... hmm. sorry. in wich one don't you have data ?
  24. Syed/... in production,, tables EVP,PRM,PRO
  25. Syed/... 0 records
  26. Arjuna/Me... ??? not normal. evp have 1 line, prm and pro are full
  27. Arjuna/Me... here :
  28. Arjuna/Me... evp : 1 line
  29. pro : 6366 lines
  30. prm : 21120 lines
  31. Arjuna/Me... on production database
  32. Syed/... but when i execute the following stmt:
  33. Syed/... select table_name,num_rows from dba_tables where table_name in ('PRO','....................);
  34. Syed/... it shows num_rows as 0 for pro,prm,evp
  35. Arjuna/Me... system table are not up to date ???
  36. Syed/... i think there is problem with the stats
  37. Syed/... i need to execute the stats again i suppose
  38. Syed/... i'll do that
  39. Arjuna/Me... I hope it will fix the problem !!! :)
  40. Syed/... me too :-)
  41. Syed/... can u plz try now
  42. Arjuna/Me... ok
  43. Arjuna/Me... yes it works !!! you're the best !!!

Reply

Marsh Posté le 08-12-2004 à 19:21:37   

Reply

Marsh Posté le 09-12-2004 à 14:23:11    

Euh... Bon, y'a pas de réponse. On va partir du principe que c'est parceque j'ai oublié de poser les questions :D
 
- Pourquoi les stats ont merdé ? C'est normal ? Ca risque de se reproduire ? Y'a moyen de l'éviter ?
- La regénération des stats, est très lente. Comment forcer Oracle à ne reconstruire que ce qui a planté ?

Reply

Marsh Posté le 09-12-2004 à 14:42:04    

Salut.
On a également souvent ce genre de pb !  
Du coup, toutes les nuits, un job oracle chargé de recalculer les stats est exécuté sur chaque base de prod...
Si tu es en 9i, l'option alter table toto MONITORING permet de ne recalculer les stats que pour les tables qui ont évolué depuis la dernière génération de stats.

Reply

Marsh Posté le 09-12-2004 à 14:50:39    

Merci pour la réponse !
 
Je transfère de ce pas ce topic aux personnes intéressée :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed