Tipi di linee guida di ottimizzazione

L'ottimizzatore Db2® elabora una istruzione in due fasi: la fase di ottimizzazione della riscrittura della query e la fase di ottimizzazione del piano.

L'istruzione ottimizzata è determinata dalla fase di ottimizzazione della riscrittura della query, che trasforma l'istruzione originale in un'istruzione semanticamente equivalente che può essere ottimizzata più facilmente nella fase di ottimizzazione del piano. La fase di ottimizzazione del piano determina i metodi di accesso ottimali, i metodi di unione e gli ordini di unione per l' istruzione ottimizzata enumerando una serie di alternative e scegliendo l'alternativa che riduce al minimo una stima del costo di esecuzione.

Le trasformazioni della query, i metodi di accesso, i metodi di unione, gli ordini di unione e le altre alternative di ottimizzazione considerate durante le due fasi di ottimizzazione sono regolate da vari parametri Db2 , come il registro speciale CURRENT QUERY OPTIMIZATION, l'opzione di collegamento REOPT e la variabile di registro DB2_REDUCED_OPTIMIZATION . La serie di alternative di ottimizzazione è nota come spazio di ricerca.

Sono supportati i seguenti tipi di linee guida di ottimizzazione delle istruzioni:
  • Le linee guida di ottimizzazione generali, che possono essere utilizzate per influenzare l'impostazione dei parametri di ottimizzazione generali, vengono applicate per prime, poiché possono influire sullo spazio di ricerca.
  • Le linee guida per la riscrittura della query, che possono essere utilizzate per influenzare le trasformazioni considerate durante la fase di ottimizzazione della riscrittura della query, vengono applicate successivamente, poiché possono influire sull'istruzione ottimizzata durante la fase di ottimizzazione del piano.
  • Le linee guida di ottimizzazione del piano, che possono essere utilizzate per influenzare i metodi di accesso, i metodi di unione e gli ordini di unione considerati durante la fase di ottimizzazione del piano, vengono applicati per ultimi.