Una chiave surrogata è un identificatore univoco utilizzato per rappresentare un'entità in un database, indipendentemente dai suoi attributi di identificazione esterni. È un sostituto della chiave naturale. Vengono generati principalmente come numero di serie con incremento automatico nella riga, ma possono anche essere generati utilizzando numeri casuali, valori hash o UUID (identificatori univoci universali).
Vantaggi della chiave surrogata
* Semplifica la progettazione del database riducendo la complessità e la ridondanza associate all'utilizzo delle chiavi naturali
*Garantisce l'unicità e l'integrità della chiave primaria
*Evita il potenziale impatto sulle prestazioni derivante dall'utilizzo di chiavi naturali grandi o composte nelle query e nei join.
Svantaggi della chiave surrogata
* Introduce un ulteriore livello di astrazione tra l'entità del mondo reale e la sua rappresentazione nel database
*Richiedono una gestione adeguata per garantire che siano generati e assegnati in modo univoco e coerente.
Quando utilizzare una chiave surrogata?
Le chiavi surrogate vengono generalmente utilizzate:
* Quando non è garantita l'univocità della chiave naturale dell'entità (come nel caso del nome di un cliente).
* Quando la chiave naturale dell'entità è complessa (come una combinazione di più attributi)
* Quando è necessario separare la chiave primaria dalla logica aziendale relativa all'entità
* Quando la chiave naturale può essere soggetta a modifiche nel tempo, la creazione non è adatta come identificatore stabile a lungo termine.
hardware © www.354353.com