Assigning queries to queues - Amazon Redshift

Si nous fournissons une traduction de la version anglaise du guide, la version anglaise du guide aura préséance en cas de contradiction. La traduction sera une traduction automatique.

Assigning queries to queues

Les exemples suivants affectent des requêtes à des files d'attente en fonction des groupes d'utilisateurs et des groupes de requêtes.

Assigning queries to queues based on user groups

Si un nom de groupe d'utilisateurs est répertorié dans une définition de file d'attente, les requêtes exécutées par des membres de ce groupe d'utilisateurs sont affectées à la file d'attente correspondante. L'exemple suivant crée des groupes d'utilisateurs et ajoute des utilisateurs à des groupes à l'aide des commandes SQL CREATE USER, CREATE GROUP et ALTER GROUP.

create group admin_group with user admin246, admin135, sec555; create user vp1234 in group ad_hoc_group password 'vpPass1234'; alter group admin_group add user analyst44, analyst45, analyst46;

Assigning a query to a query group

Vous pouvez affecter une requête à une file d'attente lors de l'exécution en affectant votre requête au groupe de requêtes approprié. Utilisez la commande SET pour commencer un groupe de requêtes.

SET query_group TO group_label

Ici, group_label est une étiquette de groupe de requête répertoriée dans la configuration WLM.

Toutes les requêtes que vous exécutez après l'exécution de la commande SET query_group s'exécutent comme membres du groupe de requêtes spécifié jusqu'à ce que vous réinitialisiez le groupe de requêtes ou que vous mettiez fin à votre session de connexion actuelle. Pour de plus amples informations sur la définition et la réinitialisation des objets Amazon Redshift, veuillez consulter SET et RESET dans le Guide de référence des commandes SQL.

Les étiquettes de groupe de requête que vous spécifiez doivent être incluses dans la configuration WLM actuelle ; sinon, SET query_group commande n’a aucun effet sur les files d’attente de requête.

L'étiquette définie dans la clause TO est capturée dans les journaux de requêtes afin que vous puissiez utiliser l'étiquette à des fins de résolution de problèmes. Pour de plus amples informations sur le paramètre de configuration query_group, veuillez consulter query_group dans la Référence de configuration.

L'exemple suivant exécute deux requêtes dans le cadre du groupe de requêtes 'priority', puis réinitialise le groupe de requêtes.

set query_group to 'priority'; select count(*)from stv_blocklist; select query, elapsed, substring from svl_qlog order by query desc limit 5; reset query_group;

Assigning queries to the superuser queue

Pour affecter une requête à la file d'attente Super-utilisateur, connectez-vous à Amazon Redshift en tant que super-utilisateur, puis exécutez la requête dans le groupe du super-utilisateur. Une fois terminé, réinitialisez le groupe de requêtes afin que les requêtes suivantes ne s'exécutent pas dans la file d'attente Super-utilisateur.

L'exemple suivant affecte deux commandes à exécuter dans la file d'attente Super-utilisateur.

set query_group to 'superuser'; analyze; vacuum; reset query_group;

Pour afficher la liste des super-utilisateurs, interrogez la table catalogue système PG_USER.

select * from pg_user where usesuper = 'true';