2009-12-17 13 views
10

Ho una vista che raccoglie dati da diverse tabelle. Mentre non ci sono indici sulla vista stessa, tutto ciò che utilizza la vista sembra beneficiare delle tabelle sottostanti che hanno indici. Questi vengono usati automaticamente? Se sono allora qual è il punto di creare indici sulle tue visualizzazioni? Tutti gli articoli consigliati su questo argomento saranno i benvenuti.Come vengono utilizzati gli indici delle tabelle quando si utilizza una vista?

risposta

9

Sì, gli indici delle tabelle sottostanti sono utilizzati automaticamente - una vista tira semplicemente i dati dalle tabelle sottostanti dopo tutto.

Per quanto riguarda i vantaggi della creazione di indici su una vista, vedere this MS Technet article. Piccolo estratto:

Utilizzare gli indici per migliorare la query prestazioni non è un nuovo concetto; tuttavia, le viste indicizzate forniscono vantaggi prestazionali aggiuntivi che non è possibile ottenere utilizzando gli indici standard . viste indicizzate possono aumentare le prestazioni query nei seguenti modi :

  • aggregazioni possono essere precalcolate e memorizzati nell'indice di minimizzare calcoli costose durante l'esecuzione di query.
  • Le tabelle possono essere preimpostate e il set di dati risultante memorizzato.
  • È possibile memorizzare combinazioni di join o aggregazioni.
+1

Quindi qual è il punto di avere viste indicizzate? Per migliorare le prestazioni di inserimento/aggiornamento sul tavolo autonomamente pur avendo ancora indici dei dati necessari? –

+0

Il punto di avere una vista indicizzata è di rendere le tue ricerche di vista ANCORA PIÙ VELOCI, specialmente per quanto riguarda i campi calcolati. –

+1

Per dirla in un altro modo, un indice è un piccolo sommario di un corpo di dati più ampio, le tue tabelle. Quando crei una vista indicizzata, non stai nemmeno perdendo tempo con grandi tabelle di materie prime e i loro indici; stai ottenendo esattamente quello che vuoi e velocemente, né più né meno. –

2

Query Optimizer riscrive la query e "appiattisce" l'uso di sub-query (che una vista è davvero). Verranno utilizzati indici sottostanti.

Problemi correlati