asia, secondo me stai sbagliando approccio: la normalizzazione di un database è un conto il numero delle query e il come comporle è un altro.
Una buona normalizzazione permette di conservare correttamente i dati, per leggerli ci sono sempre modi efficenti 
Ad esempio puoi usare le insert con valori multipli, anche se non sono veloci come i prepared statement, che ti permettono di usare l'estensione mysql (per i prepared statement dovresti usare mysqli o pdo ma non so se quest'ultimo genera in locale le query simulando i prepared statement per poi inviarli normalmente). Comunque, da quanto so, l'estensione mysqli ha qualche problemuccio 
A questo si aggiunge che non tutti supportano la mysqli o pdo e quindi dovresti cercare l'hoster che offra supporto per queste estensioni e soprattutto che monti una versione abbastanza recente di php.
Ti linko la pagina del manuale di mysql
http://dev.mysql.com/doc/refman/5.1/en/insert.html
Per intenderci la query sarebbe di questo tipo
codice:
INSERT INTO tabella (colonna1, colonna2, colonna3) VALUES ('valore1', 'valore2', 'valore3'), ('valore1', 'valore2', 'valore3'), ('valore1', 'valore2', 'valore3'), ('valore1', 'valore2', 'valore3'), ('valore1', 'valore2', 'valore3'), ('valore1', 'valore2', 'valore3')
Come vedi è abbastanza semplice 
Dipende dalla dimensione dei dati ti conviene inserire dai 100 ai 500 blocchi di valori per query, considera che generalmente la dimensione massima dei dati che puoi passare in una sola volta ammonta a circa 1mb