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à.
Scelta del migliore stile di distribuzione
Quando si esegue una query, l'ottimizzatore di query ridistribuisce le righe sui nodi di calcolo per eseguire qualsiasi operazione di join e aggregazione, in base alle necessità. La selezione di uno stile di distribuzione di tabella ha l'obiettivo di minimizzare l'impatto dalle fase di ridistribuzione posizionando i dati dove necessario prima dell'esecuzione della query.
Nota
Quando si utilizza l'ottimizzazione automatica della tabella, non è necessario scegliere lo stile di distribuzione della tabella. Per ulteriori informazioni, consultare Ottimizzazione automatica delle tabelle.
Seguono alcuni suggerimenti per l'approccio migliore:
-
Distribuire la tabella dei fatti e una tabella di dimensioni sulle relative colonne comuni.
La tabella dei fatti può avere una sola chiave di distribuzione. Le tabelle che eseguono l'operazione di join su un'altra chiave non sono collocate con la tabella dei fatti. Scegliere una dimensione da collocare in base alla frequenza alla quale viene unita in join e alla dimensione delle righe di join. Designate sia la chiave primaria della tabella delle dimensioni che la chiave esterna corrispondente della tabella dei fatti come. DISTKEY
-
Scegliere la dimensione più grande in base alla dimensione del set di dati filtrato.
Poiché devono essere distribuite solo le righe utilizzate nel join, considera le dimensioni del set di dati dopo il filtraggio e non le dimensioni della tabella.
-
Scegliere una colonna con un'elevata cardinalità nel set di risultati filtrati.
Se si distribuisce una tabella delle vendite su una colonna di dati, ad esempio, si otterrebbe probabilmente una distribuzione dei dati abbastanza uniforme, a meno che la maggior parte delle vendite non sia stagionale. Tuttavia, se in genere si utilizza un predicato a intervallo limitato per filtrare su un breve periodo di date, la maggior parte delle righe filtrate si trova su un set di sezioni limitato e il carico di lavoro delle query è asimmetrico.
-
Modifica alcune tabelle delle dimensioni per utilizzare la ALL distribuzione.
Se una tabella di dimensioni non può essere collocata con la tabella dei fatti o altre importanti tabelle di join, è spesso possibile migliorare le prestazioni delle query in modo significativo distribuendo l'intera tabella su tutti i nodi. L'utilizzo ALL della distribuzione moltiplica i requisiti di spazio di archiviazione e aumenta i tempi di caricamento e le operazioni di manutenzione, pertanto è necessario valutare tutti i fattori prima di scegliere ALL la distribuzione.
Per permettere ad Amazon Redshift di scegliere lo stile di distribuzione appropriato, specificare AUTO
per lo stile di distribuzione.
Per ulteriori informazioni sulla scelta degli stili di distribuzione, consultare Distribuzione dei dati per l'ottimizzazione delle query.