Sintomi
Considerare lo scenario descritto di seguito:
-
Si ha un'applicazione che usa molto il database tempdb oppure si ha un carico di lavoro specifico del database tempdb.
-
Si esegue l'aggiornamento a Microsoft SQL Server 2016 o a una versione successiva e si inizia a vedere il conflitto di pagine PFS.
-
Si seguono le procedure consigliate per i database tempdb e si aggiungono diversi file di dati.
In questo scenario, il conflitto di pagine PFS pesante continua e influenza le prestazioni del sistema.
Nota se la mappa della pagina è facilmente divisa per 8088, è una pagina PFS. Ad esempio, la pagina 2:3:905856 è un PFS in file_id = 3 in tempdb.
Risoluzione
Informazioni sull'aggiornamento cumulativo
Questo problema è stato risolto negli aggiornamenti cumulativi seguenti per SQL Server:
Aggiornamento cumulativo 7 per SQL Server 2017
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:
Questo problema è stato risolto nell'hotfix descritto nell'articolo seguente:
4099490pacchetto di aggiornamento hotfix su richiesta di 4099490 per SQL Server 2016 SP1
Questa correzione consente di migliorare l'allocazione della pagina PFS eseguendo allocazioni Round Robin in più pagine PFS nello stesso file di dati oltre all'allocazione round robin in tutti i file di dati di tempdb. Di conseguenza, le pagine di dati PFS più contenute in un file di dati e i file di dati più sono presenti, migliore sarà la distribuzione dell'allocazione.
Nota Poiché i dati vengono ora distribuiti tra gli intervalli PFS all'interno dei file di database tempdb, le operazioni come la compattazione del database diventeranno più intensivo di risorse. In genere, tuttavia, non è consigliabile ridurre tempdb durante la normale operazione.
Informazioni sui Service Pack per SQL Server:
Questo aggiornamento è risolto nel Service Pack seguente per SQL Server:
I Service Pack sono cumulativi. Ogni nuovo Service Pack contiene tutte le correzioni che si trovano nei Service Pack precedenti, insieme a tutte le nuove correzioni. La nostra raccomandazione consiste nell'applicare il Service Pack più recente e l'ultimo aggiornamento cumulativo per tale Service Pack. Non è necessario installare un Service Pack precedente prima di installare il Service Pack più recente. Usare la tabella 1 nell'articolo seguente per trovare altre informazioni sul Service Pack più recente e l'ultimo aggiornamento cumulativo.
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Riferimenti
Suggerimenti per ridurre il conflitto di allocazione nel database di SQL Server tempdb