WLMExemple dynamique - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

WLMExemple dynamique

Supposons que votre cluster WLM soit configuré avec deux files d'attente, en utilisant les propriétés dynamiques suivantes.

File d’attente Simultanéité % de mémoire à utiliser

1

4

50%

2

4

50%

Supposons à présent que votre cluster dispose de 200 Go de mémoire disponible pour le traitement de la requête. (Ce nombre est arbitraire et utilisé à titre d’illustration uniquement.) Comme le montre l’équation suivante, chaque emplacement se voit allouer 25 Go.

(200 GB * 50% ) / 4 slots = 25 GB

Ensuite, vous devez modifier votre WLM pour utiliser les propriétés dynamiques suivantes.

File d’attente Simultanéité % de mémoire à utiliser

1

3

75%

2

4

25%

Comme le montre l’équation suivante, la nouvelle allocation de mémoire de chaque emplacement de la file d’attente 1 est de 50 Go.

(200 GB * 75% ) / 3 slots = 50 GB

Supposons que les requêtes A1, A2, A3 et A4 soient en cours d’exécution lorsque la nouvelle configuration est appliquée, et que les requêtes B1, B2, B3 et B4 sont mises en file d’attente. WLMreconfigure dynamiquement les emplacements de requête comme suit.

Étape Requêtes en cours d’exécution Nombre d’emplacements actuel Nombre d’emplacements cible Mémoire allouée Mémoire disponible
1 A1, A2, A3, A4 4 0 100 Go 50 Go
2 A2, A3, A4 3 0 75 Go 75 Go
3 A3, A4 2 0 50 Go 100 Go
4 A3, A4, B1 2 1 100 Go 50 Go
5 A4, B1 1 1 75 Go 75 Go
6 A4, B1, B2 1 2 125 Go 25 Go
7 B1, B2 0 2 100 Go 50 Go
8 B1, B2, B3 0 3 150 Go 0 Go
  1. WLMrecalcule l'allocation de mémoire pour chaque emplacement de requête. À l’origine, la file d’attente 1 s’est vue allouer 100 Go. La nouvelle file d’attente dispose d’une allocation totale de 150 Go, elle a donc immédiatement 50 Go disponibles. La file d’attente 1 utilise à présent quatre emplacements, et le nouveau niveau de simultanéité est de trois emplacements, aucun nouvel emplacement n’est donc ajouté.

  2. Lorsqu’une requête se termine, l’emplacement est supprimé et 25 Go sont libérés. La file d’attente 1 compte à présent trois emplacements et 75 Go de mémoire disponible. La nouvelle configuration nécessite 50 Go pour chaque nouvel emplacement, mais le nouveau niveau de simultanéité est de trois emplacements, aucun nouvel emplacement n’est donc ajouté.

  3. Lorsqu’une deuxième requête se termine, l’emplacement est supprimé et 25 Go sont libérés. La file d’attente 1 compte à présent deux emplacements et 100 Go de mémoire disponible.

  4. Un nouvel emplacement est ajouté à l’aide des 50 Go de mémoire disponible. La file d’attente 1 compte à présent trois emplacements et 50 Go de mémoire libre. Les requêtes mises en file d’attente peuvent désormais être acheminées vers le nouvel emplacement.

  5. Lorsqu’une troisième requête se termine, l’emplacement est supprimé et 25 Go sont libérés. La file d’attente 1 compte à présent deux emplacements et 75 Go de mémoire disponible.

  6. Un nouvel emplacement est ajouté à l’aide des 50 Go de mémoire disponible. La file d’attente 1 compte à présent trois emplacements et 25 Go de mémoire libre. Les requêtes mises en file d’attente peuvent désormais être acheminées vers le nouvel emplacement.

  7. Lorsqu’une quatrième requête se termine, l’emplacement est supprimé et 25 Go sont libérés. La file d’attente 1 compte à présent deux emplacements et 50 Go de mémoire disponible.

  8. Un nouvel emplacement est ajouté à l’aide des 50 Go de mémoire disponible. La file d’attente 1 compte à présent trois emplacements de 50 Go chacun et toute la mémoire disponible a été allouée.

La transition est terminée, et tous les emplacements de requêtes sont disponibles pour les requêtes mises en file d’attente.