D4rkAng3l
24-05-2009, 19:32
Ciao,
devo fare questo proggetto che consiste principalmente nel caricare un mio database con tanti dati e far vedere la differenza di tempistiche nella risposta alle query prima e dopo l'ottimizzazione del database...
Io pensavo di averlo caricato un bel po' ma i tempi di risposta sono ancora velocini...
Ad esempio ho caricato nella tabella offerta la bellezza di 115053 record.
Se eseguo questa query ci mette abbastanza poco tempo nel db non ottimizzato:
mysql> SELECT ext.* FROM offerta as ext
-> WHERE ext.id_offerta =
-> (SELECT MAX(id_offerta)
-> FROM offerta JOIN inserzione
-> ON (offerta.id_oggetto = inserzione.id_oggetto)
-> WHERE inserzione.id_oggetto=4
-> AND offerta.data<=inserzione.scadenza
-> );
+------------+--------------+------------+----------------+---------------------+
| Id_Offerta | Partecipante | Id_Oggetto | Valore_Offerta | Data |
+------------+--------------+------------+----------------+---------------------+
| 115113 | ACUQ | 4 | 9695.58 | 2009-05-25 21:08:55 |
+------------+--------------+------------+----------------+---------------------+
1 row in set (0.35 sec)
Solo 0,35 secondi....
Ora vabbè che è una query su una sola tabella....ma secondo voi quanti record dovrei caricarci per avere risultati un po' consistenti? Il problema è che il programma che uso per generare dati casuali mi fa caricare soltanto 100 record alla volta (quindi stò passando le ore a clickare un tasto per generare record su record....)
Grazie
Andrea
devo fare questo proggetto che consiste principalmente nel caricare un mio database con tanti dati e far vedere la differenza di tempistiche nella risposta alle query prima e dopo l'ottimizzazione del database...
Io pensavo di averlo caricato un bel po' ma i tempi di risposta sono ancora velocini...
Ad esempio ho caricato nella tabella offerta la bellezza di 115053 record.
Se eseguo questa query ci mette abbastanza poco tempo nel db non ottimizzato:
mysql> SELECT ext.* FROM offerta as ext
-> WHERE ext.id_offerta =
-> (SELECT MAX(id_offerta)
-> FROM offerta JOIN inserzione
-> ON (offerta.id_oggetto = inserzione.id_oggetto)
-> WHERE inserzione.id_oggetto=4
-> AND offerta.data<=inserzione.scadenza
-> );
+------------+--------------+------------+----------------+---------------------+
| Id_Offerta | Partecipante | Id_Oggetto | Valore_Offerta | Data |
+------------+--------------+------------+----------------+---------------------+
| 115113 | ACUQ | 4 | 9695.58 | 2009-05-25 21:08:55 |
+------------+--------------+------------+----------------+---------------------+
1 row in set (0.35 sec)
Solo 0,35 secondi....
Ora vabbè che è una query su una sola tabella....ma secondo voi quanti record dovrei caricarci per avere risultati un po' consistenti? Il problema è che il programma che uso per generare dati casuali mi fa caricare soltanto 100 record alla volta (quindi stò passando le ore a clickare un tasto per generare record su record....)
Grazie
Andrea