Modifica lenta delle dimensioni (SCD) – Tipi | Data Warehouse

postato in: Articles | 0

Modifica lenta delle dimensioni: modifica lenta delle dimensioni sono le dimensioni in cui i dati cambiano lentamente, anziché cambiare regolarmente in base al tempo.
Ad esempio, potresti avere una dimensione cliente in un dominio di vendita al dettaglio. Diciamo che il cliente è in India e ogni mese fa un po ‘ di shopping. Ora la creazione del rapporto di vendita per i clienti è facile. Ora supponiamo che il cliente sia trasferito negli Stati Uniti e che faccia shopping lì. Come registrare un tale cambiamento nella dimensione del cliente?,
Si potrebbe sommare o media le vendite fatte dai clienti. In questo caso non sarà possibile ottenere il confronto esatto delle vendite fatte dai clienti. Come lo stipendio del cliente è aumentato dopo il trasferimento, lui / lei potrebbe fare più shopping negli Stati Uniti rispetto a in India. Se si sommano le vendite totali, quindi le vendite fatte dal cliente potrebbe sembrare più forte anche se è buono. È possibile creare un secondo record cliente e trattare il cliente trasferito come nuovo cliente. Tuttavia questo creerà problemi troppo.,
La gestione di questi problemi comporta metodologie di gestione SCD che si riferiscono a come Tipo 1 a Tipo 3. I diversi tipi di dimensioni che cambiano lentamente sono spiegati in dettaglio di seguito.
SCD Type 1: la metodologia SCD type 1 viene utilizzata quando non è necessario memorizzare dati storici nella tabella delle dimensioni. Questo metodo sovrascrive i vecchi dati nella tabella delle dimensioni con i nuovi dati. Viene utilizzato per correggere gli errori di dati nella dimensione.
Ad esempio, ho la tabella cliente con i dati seguenti.

surrogate_key customer_id customer_name Location------------------------------------------------1 1 Marspton Illions

Qui il nome del cliente è scritto in modo errato., Dovrebbe essere Marston invece di Marspton. Se si utilizza il metodo type1, semplicemente sovrascrive i dati. I dati nella tabella aggiornata saranno.

surrogate_key customer_id customer_name Location------------------------------------------------1 1 Marston Illions

Il vantaggio di type1 è la facilità di manutenzione e meno spazio occupato. Lo svantaggio è che non ci sono dati storici conservati nel data warehouse.
SCD Tipo 3: Nel metodo di tipo 3, nella tabella viene mantenuto solo lo stato corrente e lo stato precedente della riga. Per tenere traccia di queste modifiche vengono create due colonne separate nella tabella., La dimensione del cliente tabella del tipo 3 metodo sarà come

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston Illions NULL 

diciamo che, il cliente passa da Illions a Seattle e la tabella aggiornata sarà come

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston Seattle Illions

Ora, di nuovo, se il cliente passa da seattle a new york, quindi la tabella aggiornata sarà

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston NewYork Seattle

Il tipo 3 metodo hanno limitato la storia e dipende dal numero di colonne che si crea.
SCD Type 2: SCD type 2 memorizza l’intera cronologia dei dati nella tabella delle dimensioni. Con il tipo 2 possiamo memorizzare la cronologia illimitata nella tabella delle dimensioni., Nel tipo 2, è possibile memorizzare i dati in tre modi diversi. Sono

  • Versioning
  • Flagging
  • Data effettiva

SCD Tipo 2 Versioning: Nel metodo di versioning, un numero di sequenza viene utilizzato per rappresentare la modifica. Il numero di sequenza più recente rappresenta sempre la riga corrente e i numeri di sequenza precedenti rappresentano i dati passati.
Ad esempio, usiamo lo stesso esempio di cliente che cambia la posizione. Inizialmente il cliente si trova nella posizione Illions e i dati nella tabella delle dimensioni appariranno come.,

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 1

Il cliente si sposta da Illions a Seattle e il numero di versione verrà incrementato. La tabella delle dimensioni apparirà come

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 12 1 Marston Seattle 2

Ora di nuovo se il cliente viene spostato in un’altra posizione, un nuovo record verrà inserito nella tabella delle dimensioni con il numero di versione successivo.
SCD Type 2 Flagging: Nel metodo flagging, viene creata una colonna flag nella tabella delle dimensioni. Il record corrente avrà il valore del flag come 1 e i record precedenti avranno il flag come 0.
Ora per la prima volta, la dimensione del cliente sarà simile.,

surrogate_key customer_id customer_name Location flag--------------------------------------------------------1 1 Marston Illions 1

Ora quando il cliente si sposta in una nuova posizione, i vecchi record verranno aggiornati con il valore del flag come 0 e l’ultimo record avrà il valore del flag come 1.

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 02 1 Marston Seattle 1

SCD Type 2 Data effettiva: nel metodo Data effettiva, il periodo della modifica viene tracciato utilizzando le colonne start_date e end_date nella tabella delle dimensioni.
Il NULL in End_Date indica la versione corrente dei dati e i record rimanenti indicano i dati passati.,
Lettura consigliata:
SCD type 4 – Fast growing dimension
Data Warehouse Modellazione dimensionale (Tipi di schemi)
Tipi di fatti in Data Warehouse
Tipi di dimensioni in data warehouse
Progettazione logica e fisica di Data Warehouse
Se ti piace questo articolo, quindi si prega di condividerlo o fare clic sul pulsante Google +1.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *