Regras de atribuição de fila do WLM
Com o Amazon Redshift, é possível controlar a alocação de recursos de memória e CPU para consultas de usuários definindo regras de atribuição de fila em uma configuração do gerenciamento de workloads (WLM). A seção a seguir descreve como criar e gerenciar regras de atribuição de fila do WLM para obter uma alocação eficiente de recursos e atender a acordos de serviço referentes a diversas workloads no Amazon Redshift.
Quando um usuário executa uma consulta, o WLM a atribui à primeira fila correspondente, com base nas regras de atribuição de fila do WLM:
-
Se um usuário estiver conectado como superusuário e executar uma consulta no grupo de consultas identificado, a consulta será atribuída à fila de superusuários.
-
Se um usuário fizer parte de um perfil, pertencer a um grupo de usuários listado ou executar uma consulta dentro de um grupo de consultas listado, a consulta será atribuída à primeira fila correspondente.
-
Se não atender a nenhum critério, a consulta será atribuída à fila padrão, a última fila definida na configuração do WLM.
O diagrama a seguir ilustra como essas regras funcionam.
Exemplo das atribuições de fila
A tabela a seguir mostra uma configuração do WLM com a fila de superusuários e quatro filas definidas pelo usuário.
Fila | Simultaneidade | Perfis de usuário | User Groups (Grupos de usuários) | Query Groups (Grupos de consultas) |
---|---|---|---|---|
Superusuário |
1 |
superusuário |
||
1 |
5 |
test_db_rw |
UG_1 |
|
2 |
5 |
QG_B |
||
3 |
5 |
UG_2 |
QG_C |
|
Padrão |
5 |
A ilustração a seguir mostra como consultas são atribuídas às filas na tabela anterior de acordo com grupos de usuários e grupos de consultas. Para obter informações sobre como atribuir consultas a grupos de usuários e grupos de consultas no tempo de execução, consulte Atribuir consultas a filas posteriormente nesta seção.
Neste exemplo, WLM faz as seguintes atribuições:
-
O primeiro conjunto de instruções mostra três maneiras de atribuir usuários a grupos. As instruções são executadas pelo usuário
adminuser
, que não é membro de um grupo de usuários listado em nenhuma fila do WLM. Como nenhum grupo de consultas está definido, as instruções são roteadas para a fila padrão. -
Como o usuário
adminuser
é um superusuário e o grupo de consultas está definido como'superuser'
, a consulta está atribuída à fila de superusuários. -
Como o usuário
test_user
recebeu o perfiltest_db_rw
listado na fila 1, a consulta é atribuída à fila 1. -
Como o usuário
admin1
é membro do grupo de usuários listado na fila 1, a consulta é atribuída à fila 1. -
O usuário
vp1
não é membro de nenhum grupo de usuários listado. Como o grupo de consultas é definido como'QG_B'
, a consulta é atribuída à fila 2. -
O usuário
analyst1
é membro do grupo de usuários listado na fila 3, mas'QG_B'
corresponde à fila 2, logo, consulta é atribuída à fila 2. -
Como o usuário
ralph
não é membro de nenhum grupo de usuários listado e o grupo de consultas não foi redefinido, não há fila correspondente. A consulta é atribuída à fila padrão.