Diferența dintre indexul cluster și nonclustered

Cuprins:

Diferența dintre indexul cluster și nonclustered
Diferența dintre indexul cluster și nonclustered

Video: Diferența dintre indexul cluster și nonclustered

Video: Diferența dintre indexul cluster și nonclustered
Video: Clustered vs. Nonclustered Index Structures in SQL Server 2024, Iulie
Anonim

Diferența cheie – Index grupat vs nonclustered

Într-o bază de date relațională, datele sunt stocate în tabele. Aceste tabele sunt legate între ele folosind constrângeri precum cheile externe. O bază de date constă din mai multe tabele. Uneori este greu să cauți datele necesare. Prin urmare, indicii pot fi utilizați pentru a accelera căutarea. Indexul folosit într-o bază de date este similar cu indexul unei cărți. Un index al unei cărți conține capitolul cu numerele de pagină corespunzătoare. Indexarea bazei de date este similară cu aceasta. Un index are o structură similară cu un tabel și necesită un spațiu de bază de date. Există două tipuri de indici cunoscuți sub denumirea de Index Clustered și Non-Clustered. În Clustered Index, ordinea logică a indexului se potrivește cu ordinea fizică a rândurilor din tabel. În Nonclustered Index, indexul și datele reale sunt în locații separate, astfel încât indexul funcționează ca un pointer pentru a prelua datele reale. Diferența cheie dintre indexul grupat și nonclustered este că indexul grupat organizează datele reale, în timp ce indexul nonclustered indică datele reale. Atunci când există mulți indici și când stocarea datelor este crescută, acești indecși ar trebui, de asemenea, actualizați. Prin urmare, este important să creați indici în funcție de aplicație, deoarece aceasta poate scădea viteza.

Ce este Indexul Clustered?

Într-un index grupat, indexul organizează datele reale. Este similar cu un director telefonic. Numerele de telefon sunt organizate în ordine alfabetică. Numărul de telefon corespunzător poate fi găsit la căutarea unui anumit nume. Prin urmare, indicele de grupare conține datele reale într-un mod organizat. Poate exista un index pe tabel.

Diferența dintre indexul cluster și nonclustered
Diferența dintre indexul cluster și nonclustered

Figura 01: Index cluster vs nonclustered

Cheia primară este folosită pentru a specifica fiecare intrare din tabel. Într-un tabel student, student-id poate fi folosit ca cheie primară. În tabelul client, customer_id poate fi cheia primară. În general, cheia primară poate fi considerată pentru a crea indexul grupat. Practic, în indexul grupat, accesarea datelor este sistematică și rapidă, deoarece ordinea logică a indexului și ordinea tabelului sunt la fel.

Ce este indexul nonclustured?

Într-un index neclustrat, indexul indică datele reale. Indicele nonclustered este referința la date. Prin urmare, pot exista mai mulți indici per tabel. Un exemplu pentru un index neclustrat este o carte care conține indexul principal cu legenda și numărul paginii corespunzătoare sau indexul de la sfârșitul cărții cu termeni importanți în ordine alfabetică cu numărul paginii corespunzător. Acest index nu conține datele reale. Dar oferă informațiile necesare pentru a ajunge la datele reale. Prin urmare, indexul și datele sunt în locații separate. Deci, a necesitat spațiu de stocare suplimentar.

Indexul non-cluster este utilizat atunci când există alte chei decât cheia primară. În general, indexul negrupat este mai lent decât indexul grupat.

Care este asemănarea dintre indexul grupat și cel non-clustered?

Atât indexul grupat, cât și cel non-clustered sunt tipuri de indecși utilizați pentru a căuta în mod eficient date

Care este diferența dintre indexul cluster și nonclustered?

Index cluster vs nonclustered

Un index grupat este un tip de index în care înregistrările tabelului sunt reordonate fizic pentru a se potrivi cu indexul. Un index negrupat este un tip de index care conține referințele la datele reale.
Număr de indici
Poate exista un index grupat pe tabel. Pot exista mulți indici negrupați pe tabel.
Viteza
Indexul grupat este mai rapid decât Indexul nonclustered. Indexul negrupat este mai lent decât indexul grupat.
Spațiu necesar
Indexul grupat nu necesită un spațiu suplimentar. Indexul negrupat necesita un spațiu suplimentar.

Rezumat – Index grupat vs nonclustrat

O bază de date relațională conține o mulțime de date. Prin urmare, este important să existe un mecanism specific pentru căutarea rapidă a datelor. Indecii pot fi utilizați pentru a realiza această sarcină. Există două tipuri de indici. Sunt indici grupați și non-cluster. Acest articol a discutat diferența dintre indexul grupat și cel non-cluster. În indexul grupat, ordinea logică a indexului se potrivește cu ordinea fizică a rândurilor tabelului. În indexul nonclustered, indexul și datele reale sunt în locații separate, astfel încât există pointeri pentru a prelua datele. Diferența dintre indexul grupat și cel non-cluster este că indexul grupat organizează datele reale, în timp ce indexul neclustrat indică datele reale.

Recomandat: