Tesina su Database N. 2 Disegnare schema e tabelle di un

Tesina su Database N. 2
Disegnare schema e tabelle di un database almeno in seconda forma normale che descriva il
processo di bookkeeping dei dati di un esperimento di alta energia.
In particolare i dati sono divisi in Run. Un Run corrisponde a un File. Il nome del File non è
necessariamente il numero del Run.
Ogni Run è caratterizzato da
- numero
- data inizio
- data fine
- numero di eventi
- tipo di trigger (maschera di bit, rappresentata da un intero di 32 bit)
Ogni Run esiste in diversi possibili stati:
- raw
- filtrato
- calibrato
- ricostruito
- trasferito
- selezionato
Per ogni stato si genera un nuovo File dellostesso Run. Quindi il Run 123 avrà il File Raw,
il File filtrato etc etc.
Gli stati filtrato, calibrato e ricostruito sono 1 a 1. Trasferito e selezionato sono 1 a Molti, cioè per 1
Run ci sono Molti Files di tipo Trasferito/Selezionato.
Se un Run è stato selezionato i suoi eventi sono stati divisi in file appartenenti a dataset.
Un dataset corrisponde a un canale di fisica e contiene eventi che potenzialmente appartengono a
quel canale (candidati). Quindi da un singolo Run, e.g. di 1000 eventi, escono e.g. 7 files
corrispondenti a 7 dataset diversi, ciascuno con Nk, k=1...7 eventi tali che Σ Nk = 1000.
Ogni dataset quindi è composto di molti files, ciascuno da un Run; non tutti i Run compaiono in
tutti i dataset e non tutti i dataset sono selezionati in un singolo Run.
Un dataset è caratterizzato da:
- nome (e.g Hgammagamma)
- numero di files
- Run che lo compongono
- numero di eventi per Run
- numero di eventi totale
Il database deve essere disegnato in modo da rispondere a query tipiche di un fisico che fa analisi
dati. Quanti e quali Run compaiono in un Dataset ? Quanti Run sono stati calibrati ? Quali Run
devono ancora essere ricostruiti ? e altre query del genere.