Perché la cache del piano contiene piani di esecuzione stimati e non effettivi?


8

Posso pensare a molte ragioni alla base di questa decisione di archiviare i piani stimati nella cache del piano e non il piano effettivo. Ma non riesco a trovare la risposta "corretta".

Risposte:


12

Pensa a cosa significa "reale". È ciò che realmente accade per l'esecuzione di quel piano.

Un altro nome comune per il piano di esecuzione effettivo è il "piano di post-esecuzione" . Come esempio del mondo reale per correlare questo scenario, supponi di voler fare una gita campestre, quindi traccia le strade che prenderai e quanto tempo pensi che ci vorrà. Ma a causa di lavori stradali e deviazioni, non succede esattamente come avevi pianificato. Questo è il vero piano di esecuzione: il percorso effettivo che hai preso per arrivare a dove stai andando. Il piano stimato sarebbe stato quello che pensavi di fare e quale percorso avresti pensato di prendere.

Non è possibile archiviare i piani di post-esecuzione perché sono proprio questo .... post-esecuzione . Contengono metriche di ciò che è realmente accaduto, non di ciò che pensa che dovrebbe succedere SQL Server (piano di esecuzione stimato).

La cache del piano è in realtà solo un repository di "mappe" che può essere riutilizzato senza dover impiegare il tempo costoso per elaborarne una nuova . I piani di esecuzione effettivi seguono il fatto e la cache del piano deve essere gestita prima del fatto .

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.