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.