Invio di query alle viste materializzate - AWS Guida prescrittiva

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Invio di query alle viste materializzate

Quando invii una query a una vista materializzata, accedi direttamente ai dati precalcolati al suo interno. È possibile utilizzare una vista materializzata in qualsiasi query SQL facendo riferimento al nome della vista materializzata come origine dati, come nel caso di una tabella o di una vista standard.

Ad esempio, considera l'esempio di illustrazione di vista materializzata mv_total_orders della sezione Creazione di viste materializzate della presente guida. Se vuoi creare una query per mv_total_orders (che restituisce un elenco di clienti con ordini per un totale di oltre 500 USD), puoi eseguire la seguente query standard:

statement. SELECT c.cust_id, c.first_name, sum(o.amount) as total_amount FROM orders o JOIN customer c ON c.cust_id = o.customer_id GROUP BY c.cust_id, c.first_name HAVING sum(o.amount) > 500;

Tuttavia, la query precedente non è ottimizzata per la velocità. Consigliamo invece eseguire la query seguente:

SELECT cust_id, first_name, total_amount FROM mv_total_orders WHERE total_amount > 500;

La query consigliata viene eseguita molto più velocemente, perché i suoi risultati sono precalcolati e non è necessario accedere alle tabelle sottostanti (customer e order). Amazon Redshift può restituire i risultati direttamente da mv_total_orders.

Importante

Quando accede a una vista materializzata, una query vede esclusivamente i dati archiviati nella vista materializzata come da aggiornamento più recente. Di conseguenza, la query potrebbe non vedere tutte le ultime modifiche apportate alle corrispondenti tabelle di base della vista materializzata.