Allocation de mémoire dynamique WLM - 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.

Allocation de mémoire dynamique WLM

Dans chaque file d’attente, WLM crée un certain nombre d’emplacements de requêtes équivalant au niveau de simultanéité de la file d’attente. La quantité de mémoire allouée à un emplacement de requête équivaut au pourcentage de mémoire allouée à la file d’attente divisé par le nombre d’emplacements. Si vous modifiez l’allocation de mémoire ou la simultanéité, Amazon Redshift gère dynamiquement la transition vers la nouvelle configuration de WLM. Les requêtes actives peuvent donc s’exécuter jusqu’à ce qu’elles soient terminées en utilisant la quantité de mémoire actuellement allouée. Dans le même temps, Amazon Redshift veille à ce que l’utilisation totale de la mémoire ne dépasse jamais 100 % de la mémoire disponible.

Le gestionnaire de la charge de travail utilise le processus suivant pour gérer la transition.

  1. WLM recalcule l’allocation de mémoire de chaque nouvel emplacement de requête.

  2. Si un emplacement de requête n’est pas utilisé activement par une requête en cours d’exécution, WLM supprime l’emplacement, ce qui fournit de la mémoire disponible pour les nouveaux emplacements.

  3. Si un emplacement de requête est activement en cours d’utilisation, WLM attend la fin de la requête.

  4. A mesure que les requêtes actives prennent fin, les emplacements vides sont supprimés et la mémoire associée est libérée.

  5. Lorsque suffisamment de mémoire est disponible pour ajouter un ou plusieurs emplacements, de nouveaux emplacements sont ajoutés.

  6. Une fois que toutes les requêtes qui étaient en cours d’exécution au moment de la modification prennent fin, le nombre d’emplacements équivaut au nouveau niveau de simultanéité, et la transition vers la nouvelle configuration WLM est terminée.

Dans les faits, les requêtes en cours d’exécution au moment de la modification continuent d’utiliser l’allocation de mémoire d’origine. Les requêtes en file d’attente au moment de la modification sont dirigées vers de nouveaux emplacements, au fur et à mesure qu’ils deviennent disponibles.

Si les propriétés dynamiques WLM sont modifiées au cours du processus de transition, WLM commence immédiatement à passer à la nouvelle configuration, à partir de l’état actuel. Pour afficher le statut de la transition, interrogez la table système STV_WLM_SERVICE_CLASS_CONFIG.