Unterschied zwischen gruppiertem und nicht gruppiertem Index

Inhaltsverzeichnis:

Unterschied zwischen gruppiertem und nicht gruppiertem Index
Unterschied zwischen gruppiertem und nicht gruppiertem Index

Video: Unterschied zwischen gruppiertem und nicht gruppiertem Index

Video: Unterschied zwischen gruppiertem und nicht gruppiertem Index
Video: So nutzt ihr einen Index in Datenbanken? (Nicht gruppierter und gruppierter Index) 2024, November
Anonim

Hauptunterschied – Clustered vs. Nonclustered Index

In einer relationalen Datenbank werden die Daten in Tabellen gespeichert. Diese Tabellen sind über Einschränkungen wie Fremdschlüssel miteinander verbunden. Eine Datenbank besteht aus mehreren Tabellen. Manchmal ist es schwierig, die erforderlichen Daten zu finden. Daher können die Indizes verwendet werden, um die Suche zu beschleunigen. Der in einer Datenbank verwendete Index ähnelt dem Index eines Buches. Ein Index eines Buches enthält die Kapitel mit entsprechenden Seitenzahlen. Ähnlich verhält es sich mit der Indizierung der Datenbank. Ein Index hat eine ähnliche Struktur wie eine Tabelle und benötigt etwas Datenbankspeicherplatz. Es gibt zwei Arten von Indizes, die als Clustered- und Non-Clustered-Index bekannt sind. In Clustered Index stimmt die logische Reihenfolge des Index mit der physischen Reihenfolge der Tabellenzeilen überein. Beim Nonclustered Index befinden sich der Index und die eigentlichen Daten an getrennten Orten, sodass der Index wie ein Zeiger zum Abrufen der echten Daten funktioniert. Der Hauptunterschied zwischen Clustered- und Nonclustered-Index besteht darin, dass der Clustered-Index die tatsächlichen Daten organisiert, während der Nonclustered-Index auf die tatsächlichen Daten verweist. Wenn viele Indizes vorhanden sind und die Datenspeicherung erhöht wird, sollten diese Indizes ebenfalls aktualisiert werden. Daher ist es wichtig, Indizes entsprechend der Anwendung zu erstellen, da dies die Geschwindigkeit verringern kann.

Was ist Clustered Index?

In einem gruppierten Index organisiert der Index die eigentlichen Daten. Es ähnelt einem Telefonbuch. Die Telefonnummern sind alphabetisch geordnet. Die entsprechende Telefonnummer kann bei der Suche nach einem bestimmten Namen gefunden werden. Daher enthält der Clustering-Index die eigentlichen Daten auf organisierte Weise. Es kann einen Index pro Tabelle geben.

Unterschied zwischen gruppiertem und nicht gruppiertem Index
Unterschied zwischen gruppiertem und nicht gruppiertem Index

Abbildung 01: Cluster vs. Nonclustered Index

Der Primärschlüssel wird verwendet, um jeden Eintrag in der Tabelle zu spezifizieren. In einer Studententabelle kann die Studenten-ID als Primärschlüssel verwendet werden. In der Tabelle customer kann die customer_id der Primärschlüssel sein. Im Allgemeinen kann der Primärschlüssel zum Erstellen des Clustered-Index verwendet werden. Grundsätzlich ist der Datenzugriff im Clustered-Index systematisch und schnell, da die logische Reihenfolge des Index und die Tabellenreihenfolge gleich sind.

Was ist ein Nonclustured Index?

In einem Nonclustered-Index zeigt der Index auf die eigentlichen Daten. Der Nonclustered-Index ist die Referenz auf die Daten. Daher können mehrere Indizes pro Tabelle vorhanden sein. Ein Beispiel für einen Nonclustered Index ist ein Buch, das den Hauptindex mit der Bildunterschrift und der entsprechenden Seitenzahl oder den Index am Ende des Buches mit wichtigen Begriffen in alphabetischer Reihenfolge mit der entsprechenden Seitenzahl enthält. Dieser Index enthält nicht die eigentlichen Daten. Aber es liefert die Informationen, die notwendig sind, um zu den eigentlichen Daten zu gelangen. Daher befinden sich der Index und die Daten an getrennten Speicherorten. Es erforderte also zusätzlichen Speicherplatz.

Der Non-Clustered-Index wird verwendet, wenn andere Schlüssel als der Primärschlüssel vorhanden sind. Im Allgemeinen ist der Nonclustered-Index langsamer als der Clustered-Index.

Was ist die Ähnlichkeit zwischen Clustered- und Nonclustered-Index?

Clustered und Nonclustered Index sind Indextypen, die zum effizienten Durchsuchen von Daten verwendet werden

Was ist der Unterschied zwischen Clustered- und Nonclustered-Index?

Clustered vs. Nonclustered Index

Ein Clustered-Index ist eine Art Index, bei dem die Tabellendatensätze physisch neu geordnet werden, damit sie mit dem Index übereinstimmen. Ein Nonclustered-Index ist eine Art von Index, der die Verweise auf die eigentlichen Daten enthält.
Anzahl Indizes
Es kann einen gruppierten Index pro Tabelle geben. Es kann viele nicht geclusterte Indizes pro Tabelle geben.
Geschwindigkeit
Der Clustered-Index ist schneller als der Nonclustered-Index. Der Nonclustered-Index ist langsamer als der Clustered-Index.
Platzbedarf
Der Clustered-Index benötigt kein zusätzliches Leerzeichen. Der Nonclustered-Index erforderte ein zusätzliches Leerzeichen.

Zusammenfassung – Clustered vs. Nonclustered Index

Eine relationale Datenbank enthält viele Daten. Daher ist es wichtig, einen speziellen Mechanismus zum schnellen Durchsuchen von Daten zu haben. Um diese Aufgabe zu erfüllen, können Indizes verwendet werden. Es gibt zwei Arten von Indizes. Sie sind gruppierte und nicht gruppierte Indizes. In diesem Artikel wurde der Unterschied zwischen gruppiertem und nicht gruppiertem Index erläutert. Beim Clustered-Index stimmt die logische Reihenfolge des Index mit der physischen Reihenfolge der Tabellenzeilen überein. Bei einem nicht gruppierten Index befinden sich der Index und die eigentlichen Daten an getrennten Orten, sodass es Zeiger zum Abrufen der Daten gibt. Der Unterschied zwischen Clustered- und Nonclustered-Index besteht darin, dass der Clustered-Index die eigentlichen Daten organisiert, während der Nonclustered-Index auf die eigentlichen Daten verweist.

Empfohlen: