Due conti con il database

Come specificato, devo realizzare una web tv. Mi è stato chiesto di organizzare il palinsesto giornaliero di 24h, organizzato in blocchi di tempo di 15’ ciascuno. Valutando il caso pessimo avrei:

  • singole trasmissioni da 15 minuti l’una

  • 60 / 15 = 4 trasmissioni all’ora

  • 4 * 24h = 96 potenziali record al giorno

  • 96*365 = 35.040 potenziali record annui

E sto parlando solo della tabella del palinsesto. Ci saranno commenti, utenti, una sorta di social network interno, … voti per filmati, … La domanda è: come ottimizzo il database? Sicuramente storicizzerò le tabelle tipo … palinsesto2011, palinsesto2010, e così via. Potrebbe avere senso fare lo stesso a livello di mese?

Visto che le performance del QueryBuilder sono migliori e non troppo lontane da quelle di sql nativo … pensavo di fare tutte le query in questo modo per non avere cali in futuro.

Avete avuto esperienze simili?

15 * 4 = 24 ??

forse

60 / 15 = 4 trasmissioni all’ora

Oltre alla quantità di record bisognerebbe vedere quantità e tipi/dimensione dei campi delle tabelle.

Ho corretto il mio post =). Esatto: come faccio a prendere le misure e verificare se sto facendo bene o se ci sono colli di bottiglia? Non voglio andare a naso.

Bhe per il colli di bottiglia li aggiri col caching. Comunque strumenti come xdebug dovrebbero aiutarti a trovare i punti critici. Al momento dall’esterno non saprei che altri suggerimenti dare.

Per le dimensioni del db, come detto sopra, dipende dal tipo di dati che salvi nel db non solo dai record.