Vista (basi di dati)Le viste sono un elemento utilizzato dalla maggior parte dei DBMS. Si tratta, come suggerisce il nome, di "modi di vedere i dati". Una vista è rappresentata da una query ( Una vista può essere composta da una o più tabelle; alcuni DBMS, come MySQL, consentono anche di basare la vista su un'espressione SQL che non coinvolge alcuna tabella (ad esempio DescrizioneScopo delle visteLe viste generalmente vengono utilizzate per semplificare le query. Se il database è realmente relazionale, leggere un insieme di dati avente un significato potrebbe essere complesso, perché potrebbe richiedere eccessive JOIN fra tabelle; con una vista è possibile semplificare molto la stesura di query che leggono le informazioni. Un altro scopo delle viste potrebbe essere semplificare o potenziare la gestione dei permessi. Ad esempio si potrebbe creare una query che legge solo alcuni dati da una tabella (tramite la clausola Viste aggiornabiliLe viste possono essere aggiornabili, cioè è possibile eseguire su di esse comandi DML come La sesta legge formale recita: "tutte le viste che sono aggiornabili in teoria, dovrebbero esserlo anche in pratica". Viste materializzateAlcuni sistemi di gestione di database (come Oracle) supportano una vista materializzata. Si tratta di una vista i cui dati vengono registrati su una memoria di massa (di norma su disco rigido), per una lettura più rapida. A intervalli regolari, i dati ivi contenuti vengono aggiornati dal sistema (DBMS). In genere queste viste sono usate per applicazioni di data warehousing. Alternative alle visteLe viste servono a risolvere problemi che, spesso, possono essere risolti anche in altri modi. Un buon DBA deve quindi scegliere di caso in caso la soluzione più efficiente. Colonne virtuali e indici funzionaliA volte si creano delle viste solo per aggiungere a una tabella una colonna, calcolata sulle altre, senza che questa sia registrata fisicamente nel database. Le query sulla vista potranno quindi leggere la colonna aggiuntiva senza dover includere la formula necessaria per calcolarne il valore. Se il DBMS supporta le colonne virtuali (MariaDB, Oracle...) o gli indici funzionali (PostgreSQL), è sufficiente aggiungere alla tabella uno di questi oggetti. TriggerA volte le viste vengono usate per aggiungere una colonna (vedi paragrafo sulle colonne virtuali) o per modificare un valore al momento della visualizzazione (per esempio, rendendo tutti i caratteri di un campo minuscoli). Un altro modo per ottenere lo stesso risultato sono i trigger. Usando i trigger è possibile scrivere su disco il valore desiderato, rendendo più veloce la lettura (ma occupando più spazio). Tabelle riassuntiveA volte si desidera raggruppare i dati non solo logicamente, ma anche fisicamente. Una tecnica consiste nel creare delle tabelle denormalizzate, contenenti dati ricavati da altre tabelle. Queste tabelle riassuntive devono essere aggiornate periodicamente, preferibilmente in un momento in cui il database non viene utilizzato (di solito di notte). Questa tecnica permette prestazioni migliori nelle query di tipo OLAP. Voci correlate
Collegamenti esterni
|