Le statistiche di SQL Server sono archiviate nel database o nel pool buffer?


10

Mi chiedo solo se le statistiche sono conservate nel database ma non nella memoria? Se eseguo il backup / ripristino del database da un server Prod a un server di sviluppo, manterrebbero le stesse statistiche in modo che i piani di esecuzione non siano molto diversi se lo faccio sul server di sviluppo?

Risposte:


15

Il pool di buffer è una cache del database. Non c'è mai un 'o', le cose che si trovano nel pool buffer sono anche nel database, sempre. E tutto ciò che viene letto dal database deve essere, anche temporaneamente, presente nel pool di buffer.

Per quanto riguarda la domanda: le statistiche sono nel database, quindi un backup / ripristino conserverà le statistiche.

Si noti tuttavia che la conservazione delle statistiche non è una garanzia per pianificare la riproducibilità. Altri fattori influenzano la generazione del piano, come il numero di CPU e la quantità di RAM.


ok, ha senso. grazie per il chiarimento!
Joy Walker


3

Come ha detto Remus , le statistiche delle tabelle sono archiviate nel database in modo simile ad altri oggetti come tabelle e indici. Svolgono un ruolo importante nella selezione del piano di esecuzione, ma ci sono altri fattori.

Detto questo, SQL Server conosce un altro tipo di statistiche, statistiche che ci forniscono informazioni sul comportamento recente.

Ad esempio i DMV ys.dm_db_index_usage_statse sys.dm_db_index_operational_statsrestituiscono statistiche su come viene utilizzato l'indice.

Tali statistiche sono archiviate solo in memoria. Si perdono al riavvio del server e non viaggiano con il backup.

Tuttavia, l'ottimizzatore non li utilizza neanche per generare un piano.


Sì, questo è il motivo per cui ho avuto la domanda / confusione in primo luogo. Pensavo che le statistiche fossero simili ai DMV. Potrebbero sparire al riavvio del server o al ripristino di db su un altro server. Grazie per aver chiarito il punto.
Joy Walker,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.