Reglas de asignación de colas de WLM
Con Amazon Redshift, puede controlar la asignación de recursos de memoria y CPU a las consultas de los usuarios mediante la definición de reglas de asignación de colas en una configuración de administración de carga de trabajo (WLM). En la siguiente sección, se describe la creación y la administración de reglas de asignación de colas de WLM para lograr una asignación de recursos eficiente y cumplir los acuerdos de nivel de servicio para diversas cargas de trabajo en Amazon Redshift.
Cuando un usuario ejecuta una consulta, WLM asigna la consulta a la primera cola coincidente, en función de las reglas de asignación de cola de WLM.
-
Si un usuario inició sesión como superusuario y ejecuta una consulta en el grupo de consultas con la etiqueta super usuario, la consulta se asigna a la cola superusuario.
-
Si un usuario es parte de un rol, pertenece a un grupo de usuarios mostrado o ejecuta una consulta dentro del grupo de consultas mostrado, la consulta se asigna a la primera cola coincidente.
-
Si una consulta no cumple con ningún criterio, la consulta se asigna a la cola predeterminada, que es la última cola definida en la configuración de WLM.
El siguiente diagrama ilustra cómo funcionan estas reglas.
Ejemplo de asignaciones de colas
En la siguiente tabla se muestra una configuración de WLM con la cola de superusuario y cuatro colas definidas por el usuario.
Queue | Simultaneidad | Roles de usuario | User Groups (Grupos de usuarios) | Grupos de consultas |
---|---|---|---|---|
Superusuario |
1 |
superusuario |
||
1 |
5 |
test_db_rw |
UG_1 |
|
2 |
5 |
QG_B |
||
3 |
5 |
UG_2 |
QG_C |
|
Predeterminado |
5 |
La siguiente ilustración muestra el modo en que se asignan las consultas a las colas en la tabla anterior de acuerdo con los grupos de usuarios y de consultas. Para obtener información acerca del modo en que se asignan las consultas a los grupos de usuarios y de consultas en tiempo de ejecución, consulte Asignación de consultas a las colas más adelante en esta sección.
En este ejemplo, WLM realiza las siguientes asignaciones:
-
El primer conjunto de instrucciones muestra tres formas de asignar usuarios a los grupos de usuarios. Las instrucciones se ejecutan por el usuario
adminuser
, que no es miembro de un grupo de usuarios mencionado en ninguna cola de WLM. No se estableció ningún grupo de consultas, por lo que las instrucciones se dirigen a la cola predeterminada. -
El usuario
adminuser
es un superusuario y el grupo de consultas se establece en'superuser'
, por lo que la consulta se asigna a la cola de super usuario. -
El usuario
test_user
se asigna al roltest_db_rw
mostrado en la cola 1, por lo que la consulta se asigna a la cola 1. -
El usuario
admin1
es miembro del grupo de usuarios mencionado en la cola 1, por lo que la consulta se asigna a la cola 1. -
El usuario
vp1
no es miembro de ningún grupo de usuarios de la lista. El grupo de consultas se establece en'QG_B'
, por lo que la consulta se asigna a la cola 2. -
El usuario
analyst1
es miembro del grupo de usuarios mencionado en la cola 3, pero'QG_B'
coincide con la cola 2, por lo que la consulta se asigna a la cola 2. -
El usuario
ralph
no es miembro de ningún grupo de usuarios de la lista y el grupo de consultas se reinició, por lo que no hay colas coincidentes. La consulta se asigna a la cola predeterminada.