In un database relazionale, i dati vengono archiviati in tabelle. Queste tabelle sono correlate tra loro usando vincoli come chiavi esterne. Un database è composto da più tabelle. A volte è difficile cercare i dati richiesti. Pertanto, gli indici possono essere utilizzati per accelerare la ricerca. L'indice utilizzato in un database è simile all'indice di un libro. Un indice di un libro contiene il capitolo con i numeri di pagina corrispondenti. L'indicizzazione del database è simile a quella. Un indice ha la struttura simile a una tabella e richiede uno spazio di database. Esistono due tipi di indici noti come Indice cluster e non consolidato. Nell'Indice clusterizzato, l'ordine logico dell'indice corrisponde all'ordine fisico delle righe della tabella. Nell'indice non cluster, l'indice e i dati effettivi si trovano in posizioni separate, pertanto l'indice funziona come un puntatore per recuperare i dati reali. Il differenza fondamentale tra indice cluster e non cluster è quello l'indice cluster organizza i dati effettivi mentre l'indice non cluster punta ai dati effettivi. Quando ci sono molti indici e quando la memorizzazione dei dati viene aumentata, anche questi indici dovrebbero essere aggiornati. Pertanto, è importante creare indici in base all'applicazione in quanto può ridurre la velocità.
1. Panoramica e differenza chiave
2. Che cos'è l'indice cluster
3. Che cos'è l'indice non cluster
4. Somiglianze tra indice cluster e non cluster
5. Confronto affiancato - Indice clusterizzato e non cluster in forma tabulare
6. Sommario
In un indice cluster, l'indice organizza i dati effettivi. È simile a una rubrica telefonica. I numeri di telefono sono organizzati secondo l'ordine alfabetico. Il numero di telefono corrispondente può essere trovato durante la ricerca di un nome particolare. Pertanto, l'indice di clustering contiene i dati effettivi in modo organizzato. Ci può essere un indice per tabella.
Figura 01: Indice cluster vs non cluster
La chiave primaria viene utilizzata per specificare ciascuna voce nella tabella. In una tabella studenti, l'id studente può essere utilizzato come chiave primaria. Nella tabella clienti, il customer_id può essere la chiave primaria. In generale, la chiave primaria può essere considerata per creare l'indice cluster. Fondamentalmente, nell'indice cluster, l'accesso ai dati è sistematico e veloce perché l'ordine logico dell'indice e l'ordine della tabella sono nella stessa.
In un indice non cluster, l'indice punta ai dati effettivi. L'indice non cluster è il riferimento ai dati. Pertanto, ci possono essere più indici per tabella. Un esempio per un indice non cluster è un libro che contiene l'indice principale con la didascalia e il numero di pagina corrispondente o l'indice alla fine del libro con termini importanti in ordine alfabetico con il numero di pagina corrispondente. Questo indice non contiene i dati effettivi. Ma fornisce le informazioni necessarie per raggiungere i dati reali. Pertanto, l'indice e i dati sono in posizioni separate. Quindi, richiedeva ulteriore spazio di archiviazione.
L'indice non in cluster viene utilizzato quando ci sono chiavi diverse dalla chiave primaria. Generalmente, l'indice non cluster è più lento dell'indice cluster.
Indice Raggruppato vs Noncluster | |
Un indice cluster è un tipo di indice in cui i record della tabella vengono fisicamente riordinati per corrispondere all'indice. | Un indice non cluster è un tipo di indice che contiene i riferimenti ai dati effettivi. |
Numero di indici | |
Può esserci un indice cluster per tabella. | Possono esserci molti indici non raggruppati per tabella. |
Velocità | |
L'indice cluster è più veloce dell'indice non cluster. | L'indice non cluster è più lento dell'indice cluster. |
Spazio richiesto | |
L'indice cluster non richiede uno spazio aggiuntivo. | L'indice non cluster richiedeva uno spazio aggiuntivo. |
Un database relazionale contiene molti dati. Pertanto, è importante disporre di un meccanismo specifico per la ricerca rapida dei dati. Gli indici possono essere utilizzati per ottenere questo compito. Esistono due tipi di indici. Sono indici in cluster e non in cluster. Questo articolo ha discusso la differenza tra indice cluster e non cluster. Nell'indice cluster, l'ordine logico dell'indice corrisponde all'ordine fisico delle righe della tabella. Nell'indice non cluster, l'indice e i dati effettivi si trovano in posizioni separate, pertanto sono presenti indicatori per il recupero dei dati. La differenza tra indice cluster e non cluster è che l'indice cluster organizza i dati effettivi mentre l'indice non cluster punta ai dati effettivi.
1.CalebTheVideoMaker2. Progettazione database 39 - Indici (cluster, non cluster, indice composito), CalebTheVideoMaker2, 17 gennaio 2015. Disponibile qui
2. "Cos'è l'indice cluster? - Definizione da Techopedia. "Techopedia.com. Disponibile qui