Was ist Kardinalität (Datenbank)?
Im Zusammenhang mit Datenbanken bezieht sich Kardinalität auf die Eindeutigkeit von Datenwerten, die in einer Spalte enthalten sind. Hohe Kardinalität bedeutet, dass die Spalte einen großen Prozentsatz ganz eindeutiger Werte enthält. Geringe Kardinalität bedeutet, dass die Spalte eine Menge ‚Wiederholungen‘ in ihrem Datenbereich enthält.
Es ist nicht üblich, aber Kardinalität bezieht sich manchmal auch auf die Beziehungen zwischen Tabellen. Die Kardinalität zwischen Tabellen kann Eins-zu-Eins, Viele-zu-Eins oder Viele-zu-Viele sein.
Hohe Kardinalitätsspalten sind solche mit sehr eindeutigen oder ungewöhnlichen Datenwerten. Zum Beispiel sollte in einer Datenbanktabelle, die Bankkontonummern speichert, die Spalte ‚Kontonummer‘ eine sehr hohe Kardinalität aufweisen – per Definition sollte jedes Datenelement in dieser Spalte vollständig eindeutig sein.
Normale Kardinalitätsspalten sind solche mit einem etwas eindeutigen Prozentsatz von Datenwerten. Wenn beispielsweise eine Tabelle Kundeninformationen enthält, hätte die Spalte ‚Nachname‘ normale Kardinalität. Nicht jeder Nachname wird eindeutig sein (zum Beispiel wird es wahrscheinlich mehrere Vorkommen von ‚Smith‘ geben), aber im Großen und Ganzen sind die Daten ziemlich nicht-wiederholend.
Geringe Kardinalitätsspalten sind solche mit sehr wenigen eindeutigen Werten. In einer Kundentabelle wäre eine Spalte mit niedriger Kardinalität die Spalte ‚Geschlecht‘. Diese Spalte wird wahrscheinlich nur ‚M‘ und ‚F‘ als den Wertebereich haben, aus dem ausgewählt werden kann, und alle Tausende oder Millionen von Datensätzen in der Tabelle können nur einen dieser beiden Werte für diese Spalte auswählen.
Kardinalitätsbeziehungen zwischen Tabellen können die Form von Eins-zu-Eins, Eins-zu-Vielen (deren Umkehrung viele zu eins ist) oder Viele-zu-Viele annehmen. Diese Begriffe beziehen sich einfach auf die Beziehungen der Daten zwischen den Tabellen. Zum Beispiel ist die Beziehung zwischen der Tabelle ‚Kunden‘ und der Tabelle ‚Bankkonten‘ Eins-zu-Viele, dh ein Kunde kann mehrere Konten haben, aber ein Konto darf nicht zu mehr als einem Kunden gehören. Das heißt, vorausgesetzt, diese Bank hat noch nie von gemeinsamen Konten gehört!