[Php-it] [MySQL] GROUP BY molto lento

Eugenio Tacchini eugenio.tacchini at unicatt.it
Thu Jun 15 14:18:00 CEST 2006


At 12.46 15/06/2006 +0200, you wrote:
>>devo eseguire una query che mette in INNER JOIN tra loro diverse tabelle, 
>>il recordset derivante e' di circa 150000 record, la query per essere 
>>eseguita necessita di alcuni millisecondi.
>>L'aggiunta di un group by su di un campo aumenta il tempo di esecuzione 
>>in modo impressionante: si passa a piu' di 5 secondi; per avere un'idea 
>>del tipo di raggruppamento, dopo il group by il recordset derivante e' di 
>>circa 11000 record.
>>[...]
>>
>>E' normale? Avete consigli per aumentare le prestazioni?
>
>Potrebbe essere normale, dipende dalle impostazioni di mysql. Con buona 
>probabilità il risultato della query su cui eseguire l'aggregazione è 
>troppo grosso per entrare nel buffer riservato alle operazioni di sort 
>e  la query viene eseguita paginando su disco.
>
>Detto ciò, non uso mysql e non so esattamente quale sia la manopola su cui 
>agire, ma presumo possa essere sort_buffer_size:

Ciao Matteo,
grazie per la risposta.
Ho provato ad aumentare il buffer a dismisura (300 mega) ma non cambia 
nulla, la query e' sempre lenta...il settaggio del buffer e' eseguito 
correttamente perche' visualizzando le variabili vedo che e' cambiato.

Ciao.




Eugenio
------------------------------------------------------
DaDaBIK - DaDaBIK is a DataBase Interfaces Kreator
http://www.dadabik.org/
------------------------------------------------------ 



More information about the Php-it mailing list