Como implementar o gerenciamento do workload - Amazon Redshift

Como implementar o gerenciamento do workload

Você pode usar o gerenciamento de workload (WLM) para definir várias filas de consultas e rotear consultas para as filas apropriadas em tempo de execução.

Em alguns casos, você poderá ter várias sessões ou usuários executando consultas ao mesmo tempo. Nesses casos, algumas consultas poderão consumir recursos de cluster por períodos longos e afetar a performance de outras consultas. Por exemplo, suponhamos que um grupo de usuários envie consultas complexas, longas e ocasionais que selecionam e classificam linhas de várias tabelas grandes. Outro grupo normalmente envia consultas curtas que selecionam apenas algumas linhas de uma ou duas tabelas e são executadas em alguns segundos. Nessa situação, as consultas de execução mais rápida podem ter que esperar em uma fila para uma consulta mais demorada ser concluída. O WLM ajuda a gerenciar essa situação.

Você pode configurar o WLM do Amazon Redshift para ser executado com WLM automático ou WLM manual.

WLM automático

Para maximizar a taxa de transferência do sistema e usar os recursos de maneira eficaz, você pode habilitar o Amazon Redshift para gerenciar como os recursos são divididos para executar consultas simultâneas com WLM automático. O WLM automático gerencia os recursos necessários para executar consultas. O Amazon Redshift determina quantas consultas são executadas simultaneamente e quanta memória é alocada para cada consulta enviada. Você pode habilitar o WLM automático usando o console do Amazon Redshift escolhendo Alternar modo WLM e, em seguida, escolhendo WLM automático. Com essa opção, até oito filas são usadas para gerenciar consultas e os campos Memory (Memória) e Concurrency on main (Simultaneidade no principal) são definidos como auto (automático). É possível especificar uma prioridade que reflita a prioridade de negócios do workload ou os usuários que são mapeados para cada fila. A prioridade padrão das consultas está definida como Normal. Para obter informações sobre como alterar a prioridade das filas em uma fila, consulte Prioridade da consulta. Para ter mais informações, consulte Implementar o WLM automático.

No tempo de execução, é possível rotear consultas para essas filas de acordo com grupos de usuários ou de consultas. Você também pode configurar uma regra de monitoramento de consulta (QMR) para limitar as consultas de longa execução.

Ao trabalhar com a escalabilidade da simultaneidade e com o WLM automático, é possível oferecer suporte a praticamente infinitos usuários e consultas simultâneos, com performance de consultas consistentemente rápida. Para ter mais informações, consulte Trabalhar com a escalabilidade de simultaneidade.

nota

Recomendamos que você crie um grupo de parâmetros e escolha o WLM automático para gerenciar os recursos de consulta. Para obter detalhes sobre como fazer a migração do WLM manual para o WLM automático, consulte Migrar do WLM manual para o WLM automático.

WLM manual

Como alternativa, você pode gerenciar a performance do sistema e a experiência dos usuários modificando a configuração de WLM a fim de criar filas separadas para as consultas demoradas e as rápidas. No tempo de execução, é possível rotear consultas para essas filas de acordo com grupos de usuários ou de consultas. Você pode habilitar essa configuração manual usando o console do Amazon Redshift, alternando para o WLM manual. Com essa opção, especifique as filas usadas para gerenciar consultas e os valores dos campos Memory (Memória) e Concurrency on main (Simultaneidade no principal). Com uma configuração manual, é possível configurar até oito filas de consultas e definir o número de consultas que pode ser executado em cada uma dessas filas simultaneamente.

Você pode configurar regras a fim de rotear consultas para filas em especial com base no usuário que executa a consulta ou nos rótulos especificados por você. Você também pode configurar o valor de memória alocada para cada fila, de maneira que consultas grandes sejam executadas em filas com mais memória do que outras filas. Você também pode configurar uma regra de monitoramento de consulta (QMR) para limitar as consultas de longa execução. Para ter mais informações, consulte Implementar o WLM manual.

nota

Recomendamos a configuração de suas filas de consultas de WLM manual com um total de 15 slots de consulta ou menos. Para ter mais informações, consulte Nível de simultaneidade.

Limitações de enfileiramento do WLM

Observe que em uma configuração de WLM manual, a quantidade máxima de slots que você pode alocar para uma fila é 50. No entanto, isso não significa que um cluster do Amazon Redshift sempre execute 50 consultas simultaneamente em uma configuração de WLM automático. Isso pode mudar com base nas necessidades de memória ou em outros tipos de alocação de recursos no cluster.

Casos de uso de WLM automático e WLM manual

Use WLM automático quando você quiser que o Amazon Redshift gerencie como os recursos devem ser divididos para executar consultas simultâneas. O uso de WLM automático geralmente resulta em um throughput maior maior do que quando se usa o WLM manual. Com o WLM automático, é possível definir prioridades de consulta para workloads em uma fila. Para obter mais informações sobre prioridade de consultas, acesse Prioridade da consulta.

Use WLM manual quando quiser ter maior controle sobre a simultaneidade.