Progettazione di basi di dati distribuite Marco Mangiacavalli Matricola:
5) Confronto risultati
Confronto risultati A questo punto confrontiamo i risultati ottenuti utilizzando la metodologia MS con quelli della metodologia ME Le due grosse differenze di queste due metodologie risiedono nello schema utilizzato per rappresentare i dati e nelle differenti informazioni sul carico applicativo(molto più dettagliate in ME)
Metodologia MS
5 VoliDaAerArea1 AerArea1 Prenotaz. Check in VoliDaAerArea1 AerArea2 Prenotaz. Check in VoliDaAerArea3 AerArea3 Prenotaz. Check in Nodo1 Nodo 2 Nodo 3 PasDaAerArea1 PasDaAerArea2 PasDaAerArea3 Da A A A A A A3
Schema relazionale AerArea1(idA, città, area) AerArea2(idA, città, area) AerArea3(idA, città, area) VoliDaAerArea1(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) VoliDaAerArea2(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) VoliDaAerArea3(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) Pas(noP, tel, numV, dataV, classe, numPo, codB)
Metodologia ME
8 Volo1 Aeroporto1 Prenotaz. Check in Volo2 Aeroporto2 Prenotaz. Check in Volo3 Aeroporto3 Prenotaz. Check in Sito 1 Sito 2 Sito 3 Passeggero 1u Passeggero 4u Passeggero 5u Passeggero 7 Passeggero 2u Passeggero 4u Passeggero 6u Passeggero 7 Da A A A Passeggero 3u Passeggero 5u Passeggero 6u Passeggero 7 A A A3
Schema relazionale Aeroporto1(idA, città, area) Aeroporto2(idA, città, area) Aeroporto3(idA, città, area) Volo1(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) Volo2(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) Volo3(numV, dataV, gate, rit, mP, pDisp, idAP, oraP, idAA, oraA) Passeggero1(noP, tel, numV, dataV, classe, numPo, codB) Passeggero2(noP, tel, numV, dataV, classe, numPo, codB) Passeggero3(noP, tel, numV, dataV, classe, numPo, codB) Passeggero4(noP, tel, numV, dataV, classe, numPo, codB) Passeggero5(noP, tel, numV, dataV, classe, numPo, codB) Passeggero6(noP, tel, numV, dataV, classe, numPo, codB) Passeggero7(noP, tel, numV, dataV, classe, numPo, codB)
Confronto
Confronto schemi locali ottenuti Possiamo subito notare che la grossa differenza tra i due risultati sta nella relazione Passeggeri Nella metodologia MS ho ottenuto un’unica relazione allocata sul nodo di New York mentre nella seconda ho 7 relazioni Inoltre nel primo caso non ho eseguito allocazione ridondante mentre nel secondo è stata eseguita
Confronto schemi locali ottenuti In entrambe le due metodologie gli Aeroporti sono stati subbivisi per attributo “area” e i Voli per Aeroporto di partenza(relazione Da) Invece i passeggeri sono stati frammentati in modo diverso; o meglio sono stati suddivisi sempre per aeroporto di partenza ma nel caso ME si è tenuto conto anche delle possibili combinzioni tra i vari aeroporti
Confronto schemi locali ottenuti Questo è dovuto al fatto chela frammentazione è stata effettuata in 2 modi diversi tra le varie metodologie: 1)MS: la frammentazione viene eseguita tenendo conto solo delle operazioni effettuate nei vari nodi 2)ME: la frammentazione viene effettuata ragionando su tutti i possibili modi con cui è possibile frammentare la relazione; infatti, ad esempio, era stata presa in considerazione la possibilità di utilizzare come attributo di partizionamento il prefisso del numero di telefono, poi in seguito scartata. Questo approccio quindi consente di individuare i frammenti elementari in modo più dettagliato confrontando tutte le possibili alternative
Confronto schemi di partenza Altra differenza sta nel fatto che: 1)ME: utilizza lo schema ER, quindi si pate da una visione grafica delle entità presenti nel DB, da cui è possibile considerare diversi schemi relazionali associati 2)MS: utilizza lo schema relazionale, uno schema di più basso livello in cui sono presenti in modo esplicito le varie relazioni tra le diverse entità utilizzando il concetto di chiave esterna
Confronto carico applicativo Un’altra differenza fondamentale sta nel carico applicativo: 1) MS: viene utilizzata solo la tavola di frequenza, cioè il numero di attivazioni di ogni applicazione presso ogni nodo 2) ME: viene utilizzata la tavola di polarizzazione, che offre informazioni molto più dettagliate esprimento una misura quantitativa di come le partizioni influenzano la località delle elaborazioni effettuate dalle applicazioni
Confronto carico applicativo Da notare che lo schema ottenuto a pagina 83 di ME presenta già la più grossa differenza tra i due risultati ottenuti Infatti a quel punto i frammenti P4 - P7 non sono ancora stati allocati ma i frammenti P1, P2 e P3 sono stati allocati su 3 nodi differenti, mentre in MS i 3 frammenti erano stati assegnati tutti sul nodo New York
ME pagina Nord 1. Ovest 3. Sud Denver New York Atlanta A1 A2 A3 P1 P2 P3 P4 P5 P6 P7 V1 V2 V3 Fram- menti
Schema MS Rete 3. Sud = Atlanta 1. Ovest = Denver 2. Nord = New York AerArea1 VoliDaAerArea1 AerArea2 AerArea3 VoliDaAerArea2 VoliDaAerArea3 PasDaAerArea1 PasDaAerArea2 PasDaAerArea3
Motivazione Motivo di questa grossa differenza sta nel fatto che nella metodologia ME, come si può vedere a pag 71, non si tiene in considerazione che qualsiasi passeggero può prenotare un volo(non solo i passeggeri che partono partono da altri nodi) Con la scelta ME un passeggero che ha prenotato un volo ad Atlanta, se volesse prenotare un volo per New York ad esempio, dovrà lavorare anche sulla relazione Passeggero presente nell’altro nodo Questo problema viene invece in parte aggirato nel caso MS in quanto tutte le informazioni sui passeggeri si trovano su un unico nodo
Pag 71 ME a. Prenotaz.b. Check inc. Partenze Passeggero per area partenza P1P P2P P3P P4P P5P P6P P7P7 20 Accessi in locale Accessi in remoto