[gl-como] Mysql - ottimizzare prestazioni

francesco francesco@brisa.homelinux.net
Ven 3 Nov 2006 15:21:49 CET


Carlo Filippetto wrote:
> Ciao,
> ho un'altra domanda da porvi su DB..
> Io uso mysql, ho delle tabelle innoDB.
>
> In una di queste ho più di 500.000 dati e fare ricerche continue su
> tutta la tabella diventa oneroso e lento soprattutto per elaborarne
> delle statistiche!
> Ho usato gli indici, e già qualcosa ho recuperato, ma arrivo al dunque.
>
> In questi dati ho un campo 'data' giornaliero, con circa 1500 valori per
> giorno, a me serve prenderli ed analizzarli settimanalmente. Dato che
> devo fare report che coprono diversi anni di utilizzo per velocizzare le
> richieste pensavo di gestire le settimane mettendole in una seconda
> tabella, non sarebbe solo una questione di spazio (ovviamente gestendo
> per settimana e non per giorni ho 7 volte meno dati), ma ho già anche
> dei dati che invece dovrei elaborare...
> Bene, spero fin qui di essere stato chiaro.. volevo chiedervi, è meglio
> creare una nuova tabella per ogni settimana (vi sono limiti nella
> creazione di tabelle) o metterle tutte in un'unica tabella?
>
>   
dipende da quanto sono grossi i record, mandaci la queri per fare le 
statistiche, che vediamo di capire qualcosa di più, comunque eviterei di 
creare delle duplicazioni di dati facendo la tabella delle settimane.

se mai non puoi aggiungere ad ogni record di dati anche un campo con il 
numero della anno-settimana, poi fare un group by mi pare dovrebbe 
diventare semplice e veloce.

ciao


> Io pensavo.. (come suona strano).. nel primo caso ho accesso diretto
> alla tabella, lettura/modifica/scrittura più rapida dei dati, ma magari
> fastidi di altro genere nella gestione stessa delle tabelle, nel secondo
> caso ho paura ci vorrà sempre tot tempo per la ricerca ed estrapolazione
> del dato.
>
> Se conoscete un sistema migliore per fare le stesse cose sono tutto
> orecchi ( o meglio occhi )
>
> Saluti
>
>   
> ------------------------------------------------------------------------
>
>
>   



Maggiori informazioni sulla lista gl-como