Ich lese über DW-Modellierung und frage mich, warum Ersatzschlüssel überhaupt verwendet werden?Warum Ersatzschlüssel benötigt werden?
Ich verstehe, dass manchmal Business-Schlüssel nicht ganze Zahlen sind, die das Leben (sowie Joiing und Indizierung) schwieriger macht. Allerdings, was ich nicht verstehe, ist, warum eine gewisse Einschränkung der DW oder RDBMS durch Hinzufügen und zusätzliche Spalte für die Verwaltung von eindeutigen Bezeichnern zu lösen?
Wäre es nicht angemessener, dass diese Art von Funktionalität für DW/RDBMS-Benutzer transparent ist und der Eintrag automatisch eine interne Kennung vom System erhält? Zum Beispiel Erstellen eines SHA-1-Digests der gesamten Zeile oder einer Teilmenge davon (die Felder, die in irgendeiner Art von Textformat dargestellt werden können).
Ersatzschlüssel sind in der Regel automatisch inkrementierte Ganzzahlen, die 32 Bit lang sind. Da Sie den Zeilenbezeichner gegebenenfalls als Fremdschlüssel duplizieren müssen, wird im Allgemeinen viel Platz eingespart, anstatt lange Zeichenfolgen oder mehrere Spalten zu duplizieren. – apokryfos
Verstanden. Was ich nicht verstehe, warum müssen sich die DW-Benutzer darum kümmern und warum ist dies nicht eine integrierte Funktionalität der DW- oder RDBMS-Software? – aviad
Meine Vermutung ist, dass das RDBMS den zusätzlichen Platz, der von Ersatzschlüsseln eingenommen wird, in den Fällen, in denen es nicht notwendig ist, nicht erzwingen will. Was das RDBMS bietet, ist ein Mechanismus für den DB-Entwickler, um solche Schlüssel wo erforderlich zu definieren. – apokryfos