Ativar e desativar a consulta paralela no Aurora MySQL
Quando a consulta paralela está habilitada, o Aurora MySQL determina se deve utilizá-la em tempo de execução para cada consulta. No caso de junções, uniões, subconsultas etc., o Aurora MySQL determinará se usará a consulta paralela em tempo de execução para cada bloco de consulta. Para obter mais detalhes, consulte Verificar quais declarações usam consulta paralela para Aurora MySQL e Constructos do SQL para consulta paralela no Aurora MySQL.
É possível habilitar e desabilitar a consulta paralela dinamicamente no nível global e da sessão para uma instância de banco de dados utilizando a opção aurora_parallel_query. Você pode alterar a configuração aurora_parallel_query
no grupo de clusters de banco de dados para ativar ou desativar a consulta paralela por padrão.
mysql>
select @@aurora_parallel_query;+------------------------+ | @@aurora_parallel_query| +------------------------+ | 1 | +------------------------+
Para ativar ou desativar o parâmetro aurora_parallel_query
no nível da sessão, use os métodos padrão para alterar a definição da configuração do cliente. Por exemplo, você pode fazer isso pela linha de comando mysql
ou em uma aplicação JDBC ou ODBC. O comando no cliente MySQL padrão é set session aurora_parallel_query =
{'ON'/'OFF'}
. Você também pode adicionar o parâmetro de nível de sessão à configuração JDBC ou dentro do código da sua aplicação para habilitar ou desabilitar a consulta paralela dinamicamente.
É possível alterar permanentemente a configuração do parâmetro aurora_parallel_query
, seja para uma instância de banco de dados específica ou para todo o cluster. Se você especificar o valor do parâmetro em um grupo de parâmetros de banco de dados, esse valor só será aplicado a uma instância de banco de dados específica no cluster. Se você especificar o valor do parâmetro em um grupo de parâmetros do cluster de banco de dados, todas as instâncias de banco de dados no cluster herdarão a mesma configuração. Para ativar ou desativar o parâmetro aurora_parallel_query
, utilize as técnicas usadas com grupos de parâmetros, conforme descrito em Grupos de parâmetros para Amazon Aurora. Siga estas etapas:
-
Crie um grupo de parâmetros de cluster personalizado (recomendado) ou um grupo de parâmetros de banco de dados personalizado.
-
Nesse grupo de parâmetros, atualize
parallel_query
para o valor desejado. -
Dependendo se você criou um grupo de parâmetros do cluster de banco de dados ou um grupo de parâmetros de banco de dados, anexe o grupo de parâmetros ao cluster do Aurora ou às instâncias de banco de dados específicas nas quais você planeja usar o recurso de consulta paralela.
dica
Como
aurora_parallel_query
é um parâmetro dinâmico, não é necessário reiniciar o cluster depois de alterar essa configuração. No entanto, todas as conexões que estiverem usando consulta paralela antes de alternar a opção continuarão a fazê-lo até que a conexão seja fechada ou a instância seja reinicializada.
Você pode modificar o parâmetro da consulta paralela usando a operação da API ModifyDBClusterParameterGroup ou ModifyDBParameterGroup no AWS Management Console.
É possível ativar a junção de hash para clusters de consulta paralela, ativar e desativar a consulta paralela usando o console do Amazon RDS ou a AWS CLI e substituir o otimizador de consulta paralela.
Sumário
Habilitar a junção de hash para clusters de consulta paralela
A consulta paralela é normalmente usada para tipos de consultas que consomem muitos recursos e que se beneficiam da otimização de junções de hash. Portanto, é útil garantir que as junções de hash estejam habilitadas para os clusters nos quais você pretende utilizar a consulta paralela. Para obter informações sobre como habilitar junções de hash e usá-las de maneira eficaz, consulte Otimizando grandes consultas de junção do Aurora MySQL com junções hash.
Habilitar e desabilitar a consulta paralela com o uso do console
É possível habilitar ou desabilitar a consulta paralela no nível da instância de banco de dados ou do cluster de banco de dados trabalhando com grupos de parâmetros.
Para habilitar ou desabilitar a consulta paralela para um cluster de banco de dados com o AWS Management Console
-
Crie um parameter group personalizado conforme descrito em Grupos de parâmetros para Amazon Aurora.
-
Atualize aurora_parallel_query para 1 (ativada) ou 0 (desativada). Em clusters nos quais o recurso de consulta paralela está disponível, aurora_parallel_query está desabilitado por padrão.
-
Se você usar um grupo de parâmetros de cluster personalizado, anexe-o ao cluster de bancos de dados Aurora onde planeja usar o recurso de consulta paralela. Se você usar um grupo de parâmetros de banco de dados personalizado, anexe-o a uma ou mais instâncias de banco de dados no cluster. Recomendamos o uso de um grupo de parâmetros de cluster. Isso garante que todas as instâncias de banco de dados no cluster tenham as mesmas configurações para consulta paralela e recursos associados, como a junção de hash.
Habilitar e desabilitar a consulta paralela com o uso da CLI
Você pode modificar o parâmetro de consulta paralela usando o comando modify-db-cluster-parameter-group
ou modify-db-parameter-group
. Escolha o comando apropriado dependendo se você especificar o valor de aurora_parallel_query
por meio de um grupo de parâmetros de cluster de banco de dados ou de um grupo de parâmetros de banco de dados.
Para habilitar ou desabilitar a consulta paralela para um cluster de banco de dados com a CLI
-
Modifique o parâmetro de consulta paralela usando o comando
modify-db-cluster-parameter-group
. Use um comando como o seguinte. Substitua o nome apropriado para o seu próprio grupo de parâmetros personalizado. SubstituaON
ouOFF
da parteParameterValue
da opção--parameters
.$
aws rds modify-db-cluster-parameter-group --db-cluster-parameter-group-namecluster_param_group_name
\ --parameters ParameterName=aurora_parallel_query,ParameterValue=ON,ApplyMethod=pending-reboot{ "DBClusterParameterGroupName": "
aws rds modify-db-cluster-parameter-group --db-cluster-parameter-group-namecluster_param_group_name
" }cluster_param_group_name
\ --parameters ParameterName=aurora_pq,ParameterValue=ON,ApplyMethod=pending-reboot
Você também pode habilitar ou desabilitar a consulta no nível de sessão, por exemplo, por meio da linha de comando mysql
ou dentro de uma aplicação JDBC ou ODBC. Para fazer isso, use os métodos padrão para alterar uma configuração de cliente. Por exemplo, o comando no cliente MySQL padrão é set session aurora_parallel_query = {'ON'/'OFF'}
para o Aurora MySQL.
Você também pode adicionar o parâmetro de nível de sessão à configuração JDBC ou dentro do código da sua aplicação para habilitar ou desabilitar a consulta paralela dinamicamente.
Substituir o otimizador de consulta paralela
Você pode usar a variável de sessão aurora_pq_force
para substituir o otimizador de consulta paralela e solicitar uma consulta paralela para cada consulta. Recomendamos que você faça isso apenas para fins de teste. O exemplo a seguir mostra como usar aurora_pq_force
em uma sessão.
set SESSION aurora_parallel_query = ON; set SESSION aurora_pq_force = ON;
Para desativar a substituição, faça o seguinte:
set SESSION aurora_pq_force = OFF;