Indici

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Tipi di indice disponibili

Nella tabella seguente sono riportati i tipi di indici disponibili in SQL Server e i collegamenti a ulteriori informazioni.

Tipo di indice Descrizione Informazioni aggiuntive
Hash Con un indice hash l'accesso ai dati viene eseguito tramite una tabella hash in memoria. Gli indici hash utilizzano una quantità di memoria fissa (una funzione del numero di bucket). Linee guida per l'uso di indici nelle tabelle con ottimizzazione per la memoria

Linee guida per la progettazione di indici hash
Non cluster ottimizzato per la memoria Per gli indici non cluster ottimizzati per la memoria, l'utilizzo della memoria è una funzione del conteggio delle righe e della dimensione delle colonne chiave di indice Linee guida per l'uso di indici nelle tabelle con ottimizzazione per la memoria

Linee guida per la progettazione di indici non cluster ottimizzati per la memoria
Cluster Un indice cluster ordina e archivia le righe di dati della tabella o della vista in base alle chiavi di indice cluster. L'indice cluster viene implementato come albero B che supporta il recupero rapido delle righe in base ai rispettivi valori delle chiavi di indice cluster. Descrizione di indici cluster e non cluster.

Creare indici cluster

Linee guida per la progettazione di indici cluster
Non cluster Un indice non cluster può essere definito in una tabella o vista con un indice cluster o in un heap. Ogni riga di indice nell'indice non cluster contiene il valore della chiave non cluster e un indicatore di posizione delle righe. Questo indicatore punta alla riga di dati nell'indice cluster o nell'heap contenente il valore della chiave. Le righe dell'indice vengono archiviate in base all'ordine dei valori delle chiavi di indice, ma non è possibile garantire che le righe di dati abbiano un ordine specifico, a meno che nella tabella non venga creato un indice cluster. Descrizione di indici cluster e non cluster.

Creare indici non cluster

Linee guida per la progettazione di indici non cluster
Unica Un indice univoco garantisce che la chiave di indice non contenga alcun valore duplicato e che pertanto ogni riga della tabella o della vista sia univoca.

L'univocità può essere una proprietà sia degli indici cluster che degli indici non cluster.
Creare indici univoci

Linee guida per la progettazione di indici univoci
Columnstore Un indice columnstore in memoria consente di archiviare e gestire i dati tramite l'archiviazione dei dati basata su colonne e l'elaborazione delle query basata su colonne.

Gli indici columnstore sono ideali per i carichi di lavoro di data warehousing che eseguono principalmente caricamenti bulk e query di sola lettura. Usare l'indice columnstore per migliorare fino a 10 volte le prestazioni delle query rispetto all'archiviazione tradizionale orientata alle righe e fino a 7 volte la compressione dei dati rispetto alle dimensioni dei dati non compressi.
Guida agli indici columnstore

Linee guida per la progettazione di indici columnstore
Indice con colonne Indice non cluster esteso per includere colonne non chiave oltre alle colonne chiave. Creare indici con colonne incluse
Indice per le colonne calcolate Indice in una colonna derivato dal valore di una o più altre colonne, o da input deterministici specifici. Indici per le colonne calcolate
Filtrato Indice non cluster ottimizzato, particolarmente indicato per coprire query che selezionano dati da un subset ben definito. Un indice di questo tipo utilizza un predicato del filtro per indicizzare una parte di righe nella tabella. Se confrontato con indici di tabella completa, un indice filtrato progettato correttamente consente di migliorare le prestazioni di esecuzione delle query e di ridurre i costi di manutenzione e di archiviazione dell'indice stesso. Creare indici filtrati

Linee guida per la progettazione di indici filtrati
Spatial Un indice spaziale consente di eseguire in modo più efficiente determinate operazioni su oggetti spaziali (dati spaziali) in una colonna con tipo di dati geometry . nonché di ridurre il numero di oggetti sui quali è necessario applicare operazioni spaziali relativamente costose. Panoramica degli indici spaziali
XML Rappresentazione suddivisa e persistente degli oggetti binari di grandi dimensioni (BLOB, Binary Large OBject) XML nella colonna con tipo di dati xml. Indici XML (SQL Server)
Full-text Un tipo speciale di indice funzionale basato su token compilato e gestito dal motore di ricerca full-text Microsoft per SQL Server. Questo indice offre supporto efficace per le ricerche di testo complesse nelle stringhe di caratteri. Popolamento degli indici full-text

Nota

Nella documentazione di SQL Server viene usato in modo generico il termine albero B in riferimento agli indici. Negli indici rowstore SQL Server implementa un albero B+. Questo non si applica agli indici columnstore o agli archivi dati in memoria. Per altre informazioni, vedere Architettura e guida per la progettazione degli indici di SQL Server e Azure SQL.

Passaggi successivi