Implémentation de la gestion de la charge de travail - 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.

Implémentation de la gestion de la charge de travail

Vous pouvez utiliser la gestion de la charge de travail (WLM) pour définir plusieurs files d’attente de requêtes et acheminer les requêtes vers les files d’attente appropriées lors de l’exécution.

Dans certains cas, plusieurs sessions ou utilisateurs peuvent exécuter des requêtes simultanément. Certaines requêtes peuvent alors consommer des ressources de cluster pendant de longues périodes, ce qui affecte les performances des autres requêtes. Par exemple, supposons qu’un groupe d’utilisateurs soumette occasionnellement des requêtes de longue durée et complexes qui sélectionnent et trient des lignes de plusieurs tables volumineuses. Un autre groupe soumet fréquemment des requêtes courtes qui sélectionnent seulement quelques lignes d’une ou deux tables et s’exécutent en quelques secondes. Dans cette situation, les requêtes de courte durée devront peut-être patienter dans une file d’attente qu’une requête de longue durée se termine. WLM permet de gérer cette situation.

Vous pouvez configurer Amazon Redshift WLM pour qu’il fonctionne en WLM automatique ou en WLM manuel.

Gestion automatique de la charge de travail

Pour maximiser le débit du système et utiliser les ressources efficacement, vous pouvez permettre à Amazon Redshift de gérer la façon dont les ressources sont divisées pour exécuter des requêtes simultanées avec WLM automatique. Le WLM automatique gère les ressources nécessaires à l’exécution des requêtes. Amazon Redshift détermine le nombre de requêtes exécutées simultanément et la quantité de mémoire allouée à chaque requête distribuée. Vous pouvez activer le WLM automatique à l’aide de la console Amazon Redshift en choisissant Switch WLM mode (Basculer le mode WLM) puis en choisissant Auto WLM (WLM automatique). En mode automatique, huit files d’attente maximum permettent de gérer les requêtes, et les champs Memory (Mémoire) et Concurrency on main (Simultanéité sur cluster principal) sont tous deux définis sur Auto. Vous pouvez spécifier une priorité qui reflète la priorité métier de la charge de travail ou des utilisateurs qui mappent sur chaque file d’attente. La priorité des requêtes par défaut est définie sur Normal. Pour plus d’informations sur la modification de la priorité des requêtes dans une file d’attente, consultez Priorité de requête. Pour plus d’informations, consultez Implémentation de la gestion automatique de la charge de travail.

Au moment de l’exécution, vous pouvez acheminer les requêtes vers ces files d’attente en fonction des groupes d’utilisateurs ou des groupes de requêtes. Vous pouvez également configurer une règle de surveillance de requête (QRM) pour limiter les requêtes de longue durée.

Avec la mise à l’échelle de la simultanéité et la gestion automatique de la charge de travail, vous pouvez prendre en charge un nombre pratiquement illimité d’utilisateurs simultanés et de requêtes simultanées, avec des performances de requêtes toujours rapides. Pour plus d’informations, consultez Utilisation de la mise à l’échelle de la simultanéité.

Note

Nous vous recommandons de créer un groupe de paramètres et de choisir la gestion automatique de la charge de travail pour gérer vos ressources de requête. Pour plus de détails sur la migration de la gestion automatique de la charge de travail à la gestion manuelle de la charge de travail, consultez Migration de la gestion manuelle de la charge de travail à la gestion automatique de la charge de travail.

Gestion manuelle de la charge de travail

Vous pouvez également gérer les performances du système et l’expérience de vos utilisateurs en modifiant la configuration de votre gestion de la charge de travail afin de créer des files d’attente distinctes pour les requêtes de longue durée et les requêtes de courte durée. Au moment de l’exécution, vous pouvez acheminer les requêtes vers ces files d’attente en fonction des groupes d’utilisateurs ou des groupes de requêtes. Vous pouvez activer cette configuration manuelle à l’aide de la console Amazon Redshift en passant à Manual WLM (WLM manuel). En mode manuel, vous spécifiez les files d’attente utilisées pour gérer les requêtes, ainsi que les valeurs des champs Mémoire et Concurrency on main (Simultanéité sur cluster principal). Avec la configuration manuelle, vous pouvez configurer jusqu’à huit files d’attente de requêtes et définir le nombre de requêtes qui peuvent s’exécuter dans chacune de ces files d’attente simultanément.

Vous pouvez configurer des règles pour acheminer les requêtes vers des files d’attente spécifiques en fonction de l’utilisateur exécutant la requête ou d’étiquettes que vous spécifiez. Vous pouvez également configurer la quantité de mémoire allouée à chaque file d’attente, de telle sorte que les requêtes importantes s’exécutent dans des files d’attente disposant d’une mémoire supérieure aux autres files d’attente. Vous pouvez également configurer une règle de surveillance de requête (QRM) pour limiter les requêtes de longue durée. Pour plus d’informations, consultez Implémentation de la gestion manuelle de la charge de travail.

Note

Nous vous recommandons de configurer vos files d’attente de requêtes WLM manuelles avec 15 emplacements de requête au maximum. Pour plus d’informations, consultez Niveau de simultanéité.

Limites de mise en file d’attente WLM

Notez que dans le cas d’une configuration WLM manuelle, le nombre maximum d’emplacements que vous pouvez allouer à une file d’attente est de 50. Toutefois, cela ne signifie pas que dans une configuration WLM automatique, un cluster Amazon Redshift exécute toujours 50 requêtes simultanément. Cela peut changer en fonction des besoins en mémoire ou d’autres types d’allocation de ressources sur le cluster.

Cas d’utilisation de la gestion automatique ou manuelle de la charge de travail

Utilisez la gestion automatique de la charge de travail pour permettre à Amazon Redshift de gérer la façon dont les ressources sont divisées pour exécuter des requêtes simultanées. L’utilisation de la gestion automatique de la charge de travail fournit souvent un débit supérieur à celui de la gestion manuelle de la charge de travail. Avec la gestion automatique de la charge de travail, vous pouvez définir les priorités des requêtes pour les charges de travail figurant dans une file d’attente. Pour plus d’informations sur la priorité des requêtes, consultez Priorité de requête.

Utilisez la gestion manuelle de la charge de travail lorsque vous souhaitez plus de contrôle sur la simultanéité.