Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGiovanni Leone Modificato 11 anni fa
1
1 Facoltà di Ingegneria di Modena Corso di Laurea in Ingegneria Informatica Università degli Studi di Modena e Reggio Emilia Confronto dei DBMS RELAZIONALI SQLServer e MySQL Relatore: Prof. Sonia Bergamaschi Correlatore: Ing. Maurizio Vincini Candidato: Luca Sculco
2
2 Obiettivi - confronto dei tempi di risposta a diversi tipi di query: tabelle piccole, medie e grandi dimensioni join fra più tabelle join fra più tabelle indicizzate - guadagno di tempo con indici - scelta del DBMS
3
3 Query su singola tabella - 3 tipi di query: 20%, 50%, 80% - 4 tabelle di diversa grandezza: 21000 84000 147000 210000 40000 105000 170000 16000 42000 68000 4000 10500 17000 28000 73500 119000 numero di tuple
4
4 Tempi di risposta (a) 1 – query senza cache su singola tabella tempo in ms numero di record
5
5 Tempi di risposta (b) 2 – query con cache su singola tabella tempo in ms numero di record
6
6 JOIN a 2 vie (a) - 2 tabelle: esame con 23196 record (tabella esterna) studente210k con 210000 record (tabella interna) - operazioni: - FULL JOIN non supportato da MySQL inner join left join right join full join 23196 record 227696 record …..esame left join studente210k….. UNION …..esame right join studente210k…..
7
7 JOIN a 2 vie (b) senza cache con cache tempo in ms
8
8 JOIN a 3 vie (a) - 3 tabelle: corso con 72 record (tabella esterna) esame con 23196 record (1° tabella interna) studente210k con 210000 record (2° tabella interna) - operazioni: inner join full join 23196 record 227754 record
9
9 JOIN a 3 vie (b) senza cache con cache tempo in ms
10
10 JOIN a 4 vie (a) - 4 tabelle: corso con 72 record (tabella esterna) docente con 110 record (1° tabella interna) esame con 23196 record (2° tabella interna) studente210k con 210000 record (3° tabella interna) - operazioni: inner join full join 23196 record 227808 record
11
11 JOIN a 4 vie (b) senza cache con cache tempo in ms
12
12 INDICI: JOIN a 2 vie (a) - 2 tabelle: esame con 23196 record (tabella esterna) studente210k con 210000 record (tabella interna) - Indici clustered su PK: matricola,corso in ESAME matricola in STUDENTE210K - select e clausola where nella query: matricolacorsodatavoto …. matricolanomecognomecittàacorso ….…..…. ESAMESTUDENTE210K s.matricola,e.voto,s.città …… where e.corso=5 2000 record
13
13 INDICI: JOIN a 2 vie (b) - Indici unclustered nella tabella ESAME: A: indice su corso B: indice su matricola e corso C: indice su matricola e corso,voto D: indice su corso,voto E: nessun indice tempo in ms numero record 2000
14
14 INDICI: JOIN a 3 vie (a) - 3 tabelle:corso con 72 record (tabella esterna) esame con 23196 record (1° tabella interna) studente210k con 210000 record (2° tabella interna) - Indici clustered su PK: codice_corso in CORSO - select e clausola where nella query: codice_corsonome_corsodocente …. CORSO s.matricola,e.voto,c.docente,s.città …… where c.docente=9 1002 record
15
15 INDICI: JOIN a 3 vie (b) - Indici unclustered nella tabella ESAME e CORSO: F: indici su corso,voto G: indici su corso,voto e docente H: nessun indice tempo in ms numero record 1002
16
16 CONCLUSIONI - prezzo di licenza server SQLServer2000 da 730 $ a 24000 $ MySQL 5.0 da 600 $ a 5000 $ - piattaforme SQLServer disponibile solo su Windows MySQL disponibile sia su Unix che su Windows Considerate inoltre le prestazioni: - tempo di risposta elevato per query complesse - buon tempo di risposta per query semplici - basso costo di licenza - scelta del sistema operativo - prestazioni elevate per qualsiasi query - costo di licenza non trascurabile - sistema operativo Windows MySQL SQLServer
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.