Bonjour,
J'ai une procédure stockée qui efface des lignes dans une table de 60 millions d'enregistrements (les index sont passés a disable avant le delete)
ce delete fait que sql server prend 15Go de ram sur les 16 du server (un simple delete des lignes qui sont après une date donnée)
Probleme : quand je lance la suite de mes traitements ca se retrouve tres vite a utiliser le pagefile (je le vois dans le moniteur systeme, les écritures du service sql sont majoritairement dans le pagefile.sys) et mes traitements sont longs (import de données et reindexation)
Si je redémarre le service sql après le delete hop mes traitements sont très rapides et le pagefile n'est plus utilisé par sql server.(on passe à 3h contre 40 min si je fait un restart du service après le delete)
J'ai donc voulu implémenter un "restart" du servie sql lors de mon traitement plannifié...sauf que ce dernier eteint aussi l'agent donc le traitement ne continuera pas.
Mes question : je pensais que sql server rendait la memoire si besoin en cas de "pressure", hors il vas directement dans le pagefile alors que les 15Go de ram pris par le delete ne servent plus a rien...
Donc comment je fait pour que mes traitements utilisent la ram du serveur et non le pagefile?
Ps : je sais pas si ca change quelque chose mais je suis en mode simple pour le log
Partager