Se stiamo discutendo di "se si utilizzano le viste, come garantire le prestazioni" e non l'effetto delle prestazioni delle visualizzazioni in generale, penso che si riduca a moderazione (come in te stesso).
È possibile ottenere grossi problemi se si scrivono solo le viste per rendere la query semplice in tutti i casi, ma non si cura che le proprie viste siano effettivamente utili per le prestazioni. Qualsiasi query che stai facendo alla fine dovrebbe essere sana di mente (vedi l'esempio di commento da quel link di @eggyal). Ovviamente è una tautologia, ma non è meno valida
In particolare, devi fare attenzione a non creare viste dalle viste, solo perché ciò potrebbe rendere più semplice la visualizzazione.
Alla fine è necessario esaminare il motivo per cui si stanno utilizzando le viste. Ogni volta che lo fai per rendere la vita più facile alla fine della programmazione potresti essere meglio con una procedura memorizzata IMHO.
Per tenere le cose sotto controllo, potresti voler annotare il motivo per cui hai una determinata vista e decidere perché la stai usando. Per ogni 'nuovo' utilizzo all'interno della tua programmazione, ricontrolla se hai effettivamente bisogno della vista, perché ne hai bisogno, e se questo ti darebbe comunque un percorso di esecuzione sano. Continua a controllare i tuoi usi per mantenerlo veloce e continua a controllare se hai davvero bisogno di quella vista.
Ho trovato [questo articolo del blog] (http://www.mysqlperformanceblog.com/2007/08/12/mysql-view-as-performance-troublemaker/) di Peter Zaitsev piuttosto informativo in passato. – eggyal
@eggyal - Grazie, avrà una lettura e una riflessione –
Controlla anche il recente ** [MariaDB 5.3] (http://kb.askmonty.org/en/what-is-mariadb-53) ** (e 5.5) versioni che presentano numerosi miglioramenti sull'ottimizzatore, comprese le viste. –