Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Migrazione da SQL Server 2005 Standard Ed. 64 bit ad Enterprise Ed. 64...
martedì 17 novembre 2009 - 17.16
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
prassitele
Profilo
| Newbie
7
messaggi | Data Invio:
mar 17 nov 2009 - 17:16
Ciao a tutti.
Nella mia Azienda, alcune sere fa, i nostri sistemisti hanno effettuato la migrazione delle Istanze Cluster di SQL Server 2005 64 bit dalla Edizione Standard alla Edizione Enterprise. Questa migrazione, programmata da tempo, ha indubbiamente portato diversi vantaggi in termini di miglioramento delle performances nella esecuzione di molte Stored. Tuttavia, su alcuni servizi che prevedono l'esecuzione di alcune Procedure sql piuttosto articolate, abbiamo notato un decadimento pauroso delle prestazioni. Per fare un esempio:
Nella estrazione di determinate statistiche, viene usata una Stored che, ricevuto in ingresso un intervallo temporale, automaticamente lo fraziona in intervalli mensili e, relativamente all'ultimo mese di ricerca, provvede al frazionamento di quest'ultimo in intervalli settimanali; per ognuno di questi sottointervalli, la stored richiama un'altra procedura che, per ogni cliente, estrae le statistiche di interesse e colleziona i risultati in una tabella temporanea che crea dinamicamente. Al termine, la procedura legge la tabella, restituisce l'esito della query in formato XML e distrugge la tabella stessa, lasciando il DB pulito. Prima della migrazione, il tempo di esecuzione della statistica, su un parco clienti composto da diverse centinaia di unità, richiedeva meno di 10 secondi; dopo la migrazione la medesima statistica viene eseguita in 20 minuti!!!
Mi son dannato l'anima esaminando le opzioni con cui l'installazione è stata effettuata ma non ho notato cose strane.
Premetto che tutte le tabelle sono indicizzate rispetto ai campi più frequentemente coinvolti nelle query e che, ogni notte, un Job opera la Riorganizzazione o la Ricostruzione degli indici, a seconda delle esigenze.
C'è qualcuno che possa darmi qualche suggerimento, magari indicandomi qualche opzione da settare, per risolvere questo spinoso problema?
Grazie e ciao ancora.
Enrico
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 18 nov 2009 - 19:42
>Premetto che tutte le tabelle sono indicizzate rispetto ai campi
>più frequentemente coinvolti nelle query e che, ogni notte, un
>Job opera la Riorganizzazione o la Ricostruzione degli indici,
>a seconda delle esigenze.
>C'è qualcuno che possa darmi qualche suggerimento, magari indicandomi
>qualche opzione da settare, per risolvere questo spinoso problema?
Ciao Enrico,
la prima domanda è, e i sistemisti cosa dicono ?
A parte questa anche se la mia conoscenza in questo campo (cluster e mica cluster) è pressochè nulla, la prima cosa che mi verrebbe da fare è analizzare le stored procedure che richiedono 20 minuti per l'esecuzione. Non ti è possibile fare una analisi query by query e vedere l'execution plan e i singoli tempi d'esecuzione dei vari blocchi della SP ?
Leggendo la prima parte del tuo quesito la mia risposta sarebbe state di ricostruire gli indici, ma evidentemente mi sono accorto sul finale che già viene fatto. Puoi escludere con certezza che su qualche colonna che tu utilizzi manchi effettivamente un indice e che per cause a me ignote prima funzionava egregiamente e ora no ?
Ciao
David De Giacomi | <empty>
http://blogs.dotnethell.it/david/
prassitele
Profilo
| Newbie
7
messaggi | Data Invio:
lun 23 nov 2009 - 10:29
Ciao, David.
Grazie infinite per il tuo contributo.
Ho provveduto ad esaminare, come mi hai suggerito, il piano di esecuzione delle Stored "incriminate" e non ho rilevato alcunchè di anormale. Mi sembra, invece, che su qualche tabella si siano persi alcuni indici. Probabilmente la ragione del decadimento delle prestazioni è da individuare proprio in questo.
Ora ricostruirò gli indici perduti, avvierò il processo di Rebuild e, non appena sarà possibile, opererò lo Shrink del DataBase (non è operazione che si possa fare a cuor leggero perchè il DB è quello di Produzione ed ha una dimensione di 500 GB
).
Ho idea che al termine di questo can can, riuscirò a riottenere buone prestazioni.
Grazie ancora per gli ottimi consigli.
Ciao.
Enrico
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
lun 23 nov 2009 - 11:47
>Ora ricostruirò gli indici perduti, avvierò il processo di Rebuild
>e, non appena sarà possibile, opererò lo Shrink del DataBase
>(non è operazione che si possa fare a cuor leggero perchè il
>DB è quello di Produzione ed ha una dimensione di 500 GB
Schedulala di notte nel momento di minor uso.
>Ho idea che al termine di questo can can, riuscirò a riottenere
>buone prestazioni.
Fai sapere se risolvi sempre in questo thread.
>Grazie ancora per gli ottimi consigli.
>Ciao.
Ciao
David De Giacomi | <empty>
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !