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à.
Esempio di WLM dinamico
Con Amazon Redshift, puoi gestire automaticamente la distribuzione del carico di lavoro e l'allocazione delle risorse tra i cluster Amazon Redshift utilizzando Dynamic WLM (Workload Management). Dynamic WLM è un esempio di configurazione Workload Management (WLM) che regola dinamicamente le allocazioni di memoria in base alle richieste del carico di lavoro, garantendo concorrenza e prestazioni ottimali. La sezione seguente fornisce dettagli sull'implementazione e la configurazione di Dynamic WLM per i cluster Amazon Redshift.
Supponiamo che il WLM del cluster sia configurato con due code tramite le seguenti proprietà dinamiche.
Queue | Simultaneità | % di memoria da usare |
---|---|---|
1 |
4 |
50% |
2 |
4 |
50% |
Ora supponiamo che il tuo cluster abbia 200 GB di memoria disponibile per l'elaborazione delle query. Questo numero è arbitrario e viene utilizzato solo a scopo illustrativo. Come mostra la seguente equazione, a ogni slot sono allocati 25 GB.
(200 GB * 50% ) / 4 slots = 25 GB
Successivamente, modifichi WLM per utilizzare le seguenti proprietà dinamiche.
Queue | Simultaneità | % di memoria da usare |
---|---|---|
1 |
3 |
75% |
2 |
4 |
25% |
Come mostra la seguente equazione, la nuova allocazione di memoria per ogni slot nella coda 1 è di 50 GB.
(200 GB * 75% ) / 3 slots = 50 GB
Supponiamo che le query A1, A2, A3 e A4 siano in esecuzione quando viene applicata la nuova configurazione e le query B1, B2, B3 e B4 siano in coda. WLM riconfigura dinamicamente gli slot delle query come segue.
Fase | Esecuzione di query | Conteggio slot corrente | Conteggio slot target | Memoria allocata | Memoria disponibile |
---|---|---|---|---|---|
1 | A1, A2, A3, A4 | 4 | 0 | 100 GB | 50 GB |
2 | A2, A3, A4 | 3 | 0 | 75 GB | 75 GB |
3 | A3, A4 | 2 | 0 | 50 GB | 100 GB |
4 | A3, A4, B1 | 2 | 1 | 100 GB | 50 GB |
5 | A4, B1 | 1 | 1 | 75 GB | 75 GB |
6 | A4, B1, B2 | 1 | 2 | 125 GB | 25 GB |
7 | B1, B2 | 0 | 2 | 100 GB | 50 GB |
8 | B1, B2, B3 | 0 | 3 | 150 GB | 0 GB |
-
WLM ricalcola l'allocazione della memoria per ogni slot di query. Originariamente, alla coda 1 erano allocati 100 GB. La nuova coda ha una allocazione totale di 150 GB e pertanto ha immediatamente 50 GB disponibili. La coda 1 ora utilizza quattro slot e il nuovo livello di simultaneità è tre slot, quindi non vengono aggiunti nuovi slot.
-
Al termine di una query, lo slot viene rimosso e vengono liberati 25 GB. La coda 1 ora ha tre slot e 75 GB di memoria disponibile. La nuova configurazione richiede 50 GB per ogni nuovo slot, ma il nuovo livello di simultaneità è tre slot, quindi non vengono aggiunti nuovi slot.
-
Al termine di una seconda query, lo slot viene rimosso e vengono liberati 25 GB. La coda 1 ora ha due slot e 100 GB di memoria disponibile.
-
Viene aggiunto un nuovo slot utilizzando 50 GB di memoria disponibile. La coda 1 ora ha tre slot e 50 GB di memoria disponibile. Le query in coda possono ora essere indirizzate al nuovo slot.
-
Al termine di una terza query, lo slot viene rimosso e vengono liberati 25 GB. La coda 1 ora ha due slot e 75 GB di memoria disponibile.
-
Viene aggiunto un nuovo slot utilizzando 50 GB di memoria disponibile. La coda 1 ora ha tre slot e 25 GB di memoria disponibile. Le query in coda possono ora essere indirizzate al nuovo slot.
-
Al termine di una quarta query, lo slot viene rimosso e vengono liberati 25 GB. La coda 1 ora ha due slot e 50 GB di memoria disponibile.
-
Viene aggiunto un nuovo slot utilizzando 50 GB di memoria disponibile. La coda 1 ora ha tre slot con 50 GB ciascuno e tutta la memoria disponibile è stata allocata.
La transizione è completa e tutti gli slot di query sono disponibili per le query in coda.