[Basi di dati] Analisi delle ridondanze
Buongiorno, mi trovo a dover fare l'analisi delle ridondanze per il mio progetto, per 3 attributi che sono derivabili dal conteggio di alcune occorrenze: il numero di partite giocate per ogni categoria. Ora, gli attributi sono 3 e sono numerici, quindi come occupazione di spazio ho calcolato 4 byte per ognuno (esagerando direi) e siccome sono 3 ed il volume dei dati dell'entità che li contiene è 2000, mi risulta che l'occupazione sia 4 x 3 x 2000 ovvero poco meno di 24 kb, decisamente trascurabile. Il problema sorge nel calcolare gli accessi, fatto che non ho ben capito.
Gli attributi in questione fanno parte dell'entità Utente. Per vedere gli accessi necessari devo considerare tutte le operazioni che coinvolgono quegli attributi, giusto?
Questa è la lista delle operazioni:
1. Visualizzare tutti gli impianti presenti nel sistema
2. Visualizzare le categorie presenti nel sistema
3. Visualizzare/cercare i profili degli utenti della piattaforma
4. Visualizzare, per ciascun UP, la lista degli ES organizzati
5. Visualizzare, per ciascun utente, la lista degli ES cui si è partecipato
6. Visualizzare la lista degli eventi APERTI alla data attuale, per le diverse categorie
7. Visualizzare la lista e l’esito degli ES CHIUSI
8. Visualizzare i post presenti sui vari forum
a. Organizzare un nuovo ES (per UP)
b. Iscriversi ad un ES (per UP o US)
c. Confermare/rifiutare la partecipazione di utenti all’ES organizzato (per UP)
d. Inserire l’esito dell’ES organizzato (per UP)
e. Inserire la valutazione di un altro utente giocatore per un ES cui si è partecipato
f. Inserire un post in un forum
g. Registrazione di un nuovo utente
A. Mostrare, per ogni utente, le statistiche relative all’utilizzo della piattaforma:
1. #numero partite calcio giocate: X
2. #numero partite pallavolo giocate: Y
3. #numero partite tennis giocate: Z
B. Mostrare, per ogni utente, le statistiche relative alle valutazioni ricevute:
1. #voto medio come calciatore: X1
2. #media goal/partita: X2
3. #voto medio come pallavolista: Y
4. #media punti/partita: Y2
5. #voto medio come tennista: Z
6. #numero partite tennis vinte: Z2
C. Mostrare le statistiche del giocatore TOP:
1. #giocatore che ha partecipato al maggior numero di ES, nelle varie categorie
2. #giocatore con voto massimo, nelle varie categorie
D. Mostrare le statistiche della squadra TOP (per calcio/pallavolo):
1. #squadra che ha partecipato al maggior numero di ES, nelle varie categorie
2. #squadra che ha vinto il maggior numero di partite, nelle varie categorie
Devo considerare tutte le operazioni che coinvolgono gli utenti (in tal caso, non finirò mai!!)?
Oppure solo quelle in cui il dato in questione (numero di partite) viene acceduto/modificato?
Ossia, la c. (la partecipazione approvata dell'utente ad un ES significa che l'utente ha quindi giocato una partita), la A1, A2, A3? Ma forse anche quelle della sezione B? Perché per se ho bisogno del voto medio come calciatore, pallavolista, tennista, mi serve anche il numero di partite, giusto? E per lo stesso motivo anche la C1...
Grazie mille.
Gli attributi in questione fanno parte dell'entità Utente. Per vedere gli accessi necessari devo considerare tutte le operazioni che coinvolgono quegli attributi, giusto?
Questa è la lista delle operazioni:
1. Visualizzare tutti gli impianti presenti nel sistema
2. Visualizzare le categorie presenti nel sistema
3. Visualizzare/cercare i profili degli utenti della piattaforma
4. Visualizzare, per ciascun UP, la lista degli ES organizzati
5. Visualizzare, per ciascun utente, la lista degli ES cui si è partecipato
6. Visualizzare la lista degli eventi APERTI alla data attuale, per le diverse categorie
7. Visualizzare la lista e l’esito degli ES CHIUSI
8. Visualizzare i post presenti sui vari forum
a. Organizzare un nuovo ES (per UP)
b. Iscriversi ad un ES (per UP o US)
c. Confermare/rifiutare la partecipazione di utenti all’ES organizzato (per UP)
d. Inserire l’esito dell’ES organizzato (per UP)
e. Inserire la valutazione di un altro utente giocatore per un ES cui si è partecipato
f. Inserire un post in un forum
g. Registrazione di un nuovo utente
A. Mostrare, per ogni utente, le statistiche relative all’utilizzo della piattaforma:
1. #numero partite calcio giocate: X
2. #numero partite pallavolo giocate: Y
3. #numero partite tennis giocate: Z
B. Mostrare, per ogni utente, le statistiche relative alle valutazioni ricevute:
1. #voto medio come calciatore: X1
2. #media goal/partita: X2
3. #voto medio come pallavolista: Y
4. #media punti/partita: Y2
5. #voto medio come tennista: Z
6. #numero partite tennis vinte: Z2
C. Mostrare le statistiche del giocatore TOP:
1. #giocatore che ha partecipato al maggior numero di ES, nelle varie categorie
2. #giocatore con voto massimo, nelle varie categorie
D. Mostrare le statistiche della squadra TOP (per calcio/pallavolo):
1. #squadra che ha partecipato al maggior numero di ES, nelle varie categorie
2. #squadra che ha vinto il maggior numero di partite, nelle varie categorie
Devo considerare tutte le operazioni che coinvolgono gli utenti (in tal caso, non finirò mai!!)?
Oppure solo quelle in cui il dato in questione (numero di partite) viene acceduto/modificato?
Ossia, la c. (la partecipazione approvata dell'utente ad un ES significa che l'utente ha quindi giocato una partita), la A1, A2, A3? Ma forse anche quelle della sezione B? Perché per se ho bisogno del voto medio come calciatore, pallavolista, tennista, mi serve anche il numero di partite, giusto? E per lo stesso motivo anche la C1...
Grazie mille.
Risposte
Alla fine penso che le operazioni che coinvolgono il dato ridondante siano queste:
c.
A1
A2
A3
B2
B4
C1
Ho fatto l'analisi e mi risulta che non conviene tenerle, ma ho dei forti dubbi. Qualcuno che l'ha capita bene potrebbe spiegarmi quando bisogna considerare l'accesso in scrittura alle associazioni?
c.
A1
A2
A3
B2
B4
C1
Ho fatto l'analisi e mi risulta che non conviene tenerle, ma ho dei forti dubbi. Qualcuno che l'ha capita bene potrebbe spiegarmi quando bisogna considerare l'accesso in scrittura alle associazioni?