Scelta del migliore stile di distribuzione - Amazon Redshift

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 Utilizzo dell'ottimizzazione automatica delle tabelle.

Seguono alcuni suggerimenti per l'approccio migliore:

  1. 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. Indicare la chiave primaria della tabella di dimensioni e la chiave esterna corrispondente della tabella dei fatti come DISTKEY.

  2. 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.

  3. 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.

  4. Modificare alcune tabelle di dimensioni per utilizzare la distribuzione ALL.

    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 della distribuzione ALL moltiplica i requisiti di spazio di storage e aumenta i tempi di caricamento oltre che le operazioni di manutenzione; è quindi necessario valutare tutti i fattori prima di scegliere la distribuzione ALL.

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 Utilizzo degli stili di distribuzione dati.