Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 23544|Risposta: 2

[Fonte] Frammentazione degli indici ottimizzata per le prestazioni di SQL Server

[Copiato link]
Pubblicato su 27/12/2020 22:32:27 | | | |
Panoramica della frammentazione dell'indice

Cos'è la frammentazione dell'indice e perché dovrei concentrarmi su di essa:
La frammentazione esiste quando l'ordine logico nell'indice (basato sul valore chiave nell'indice) non corrisponde all'ordine fisico nelle pagine indicizzate nelle pagine indicizzate nelle pagine che l'indice contiene.
Ogni volta che viene eseguita un'operazione di inserimento, aggiornamento o cancellazione sui dati sottostanti, il motore del database modifica automaticamente l'indice. Ad esempio, aggiungere righe a una tabella può far sì che le righe divise memorizzino le pagine esistenti nell'indice per fare spazio all'inserimento di nuove chiavi. Col tempo, queste modifiche possono causare la dispersione delle informazioni nell'indice nel database (contenenti frammenti). La frammentazione si verifica quando l'ordine logico (basato sul valore-chiave) nelle pagine contenute nell'indice non corrisponde all'ordine fisico nel file dati.
Un gran numero di indici frammentati può rallentare le prestazioni delle query perché è necessario un ulteriore I/O per trovare i dati a cui l'indice punta. Un aumento maggiore di I/O può causare una risposta lenta dell'applicazione, specialmente quando sono coinvolte operazioni di scansione.
Controlla la frammentazione dell'indice del database

Comando:



Ci sono due modi per deframmentare: riorganizzare e ricreare gli indici, ricostruire gli indici si riferisce all'eliminazione degli indici vecchi e alla ricostruzione di nuovi indici in una transazione, che riconquista lo spazio su disco rigido dell'indice originale e alloca nuovo spazio di archiviazione per creare una struttura di indici. La riorganizzazione degli indici si riferisce al non allocare nuovo spazio di archiviazione, riorganizzare i nodi foglia della struttura indice sulla base dello spazio originale, in modo che l'ordine logico e fisico delle pagine dati siano coerenti e liberare lo spazio in eccesso nell'indice.

Usa la funzione sys.dm_db_index_physical_stats per rilevare il grado di frammentazione, il campo avg_fragmentation_in_percent la percentuale di frammenti logici restituiti; in generale, Microsoft raccomanda una soglia del 30%:

avg_fragmentation_in_percent >5% e <=30%: ALTER INDEX RIORGANIZE;
avg_fragmentation_in_percent >30%: RICOSTRUZIONE DELL'INDICE ALTER;

avg_fragmentation_in_percent: Percentuale di frammentazione dell'indice, se la frammentazione è inferiore al 10%~20%, è improbabile che la frammentazione rappresenti un problema,Se la frammentazione dell'indice è al 20%~40%, la frammentazione può essere un problema, ma la risoluzione dell'indice può essere eliminata tramite la riorganizzazione dell'indice, e la frammentazione su larga scala (quando la frammentazione è superiore al 40%) può richiedere la ricostruzione dell'indice.


Consulta le informazioni di frammentazione per tutti gli indici di una data tabella



Reindicizzazione delle tabelle


Ricostruisci l'indice di tutte le tabelle dell'intero database



Risorse:Il login del link ipertestuale è visibile.




Precedente:Il formato della richiesta non viene riconosciuto perché l'URL termina inaspettatamente con "/itsvse".
Prossimo:Il framework ORM Dapper è semplice da usare
Pubblicato su 22/09/2021 13:11:22 |
Per fortuna,
 Padrone di casa| Pubblicato su 18/11/2025 14:35:31 |
Cos'è sp_updatestats?

È una stored procedure di sistema che fa parte del sistema SQL Server.
Esamina tutte le tabelle utente nel database attuale e ricalcola e aggiorna le statistiche per colonne e indici i cui dati sono cambiati dall'ultimo aggiornamento statistico.
Comando:
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com