next up previous contents index
Next: Migrazione dei dati Up: Un approccio al versioning Previous: Algebra delle modifiche degli   Indice   Indice analitico

Versioni

Come abbiamo già visto nel capitolo 3, dedicato al problema del tempo nei data warehouse, nello schema versioning l'utente o il sistema stabiliscono la validità temporale degli schemi, secondo criteri di consistenza e di corrispondenza con la realtà che è necessario modellare. Uno schema che riflette correttamente le necessità di business durante un periodo temporale definito, viene etichettato attraverso un identificativo di versione ed un Periodo di Validità Temporale. Nell'approccio che andiamo a presentare non c'è possibilità di sovrapposizione temporale tra due schemi, e risulta quindi impossibile modellare versioni alternative definite in uno stesso istante $ t_1$, come invece avviene in [BEK+04].

La validità temporale di una versione creata all'istante $ t_0$ è l'intervallo $ [t_0,+\infty]$ se è l'ultima versione che è stata definita, mentre è $ [t_0,t_1]$, dove $ t_1$ è l'istante di creazione della versione successiva.

Ogni versione è popolata dagli eventi che sono accaduti in questo periodo di tempo, e su questo possono essere interrogati.

In accordo con [MS90] nel caso del versioning degli schemi non c'è nessuna necessità di distinzione tra valid-time e transaction-time.

Una nuova versione è il risultato di una serie di operazioni di modifica, che chiamiamo Transazione di Modifiche sullo Schema, o semplicemente transazione. In analogia ai concetti usuali di transazione, i risultati intermedi ottenuti attraverso le singole operazioni di modifica degli schemi sono invisibili ai fini dell'interrogazione. Oltre a questo gli schemi di modifica intermedi non sono popolati di eventi, e ad essi non viene associato nessuno schema aumentato.

Una transazione produce una nuova versione ed uno schema aumentato per ciascuna versione precedente, ognuna delle quali viene (fisicamente o virtualmente) popolata di dati.



Subsections
next up previous contents index
Next: Migrazione dei dati Up: Un approccio al versioning Previous: Algebra delle modifiche degli   Indice   Indice analitico
Alessandro Ronchi 2005-07-16