O AnalyticDB for MySQL Data Warehouse Edition é compatível com dois modos de execução de consultas: Interactive e Batch. Use esses modos com grupos de recursos para gerenciar cargas de trabalho mistas em um único cluster.
Pré-requisitos
O cluster deve ser da edição Data Warehouse Edition.
Como funciona
O AnalyticDB for MySQL é um serviço de processamento analítico online (OLAP) em tempo real. Seu mecanismo de execução combina processamento massivamente paralelo (MPP) com grafos acíclicos dirigidos (DAGs) para executar consultas em alta velocidade usando memória.
Quando uma consulta chega, o mecanismo de execução a analisa, gera um plano de execução e distribui as tarefas pelo cluster. O agendamento dessas tarefas e o uso de armazenamento em disco dependem do modo de execução.
Modo Interactive
O modo Interactive é otimizado para análises em tempo real com baixa latência.
Todas as tarefas distribuídas de uma consulta são agendadas e executadas simultaneamente. Os dados fluem das tarefas anteriores para as subsequentes em um pipeline, e todo o processamento permanece na memória.
Use o modo Interactive quando:
As consultas precisarem retornar resultados em segundos
As cargas de trabalho envolverem painéis em tempo real, explorações ad hoc ou consultas analíticas concorrentes
Modo Batch
O modo Batch foi projetado para cargas de trabalho de alto throughput que processam grandes volumes de dados.
O mecanismo de execução agenda as tarefas em lotes com base em suas dependências. Quando a memória é insuficiente, os dados são automaticamente descarregados no disco, permitindo que jobs grandes sejam concluídos sem esgotar a memória disponível. Os resultados intermediários são gravados no disco e lidos novamente quando as tarefas subsequentes são executadas.
Essa capacidade de descarga em disco é fundamental para o modo Batch: ela permite que jobs de extração, transformação e carga (ETL) em grande escala sejam concluídos de forma confiável mesmo sob restrições de memória, com menor custo computacional e maior throughput do que se fossem executados no modo Interactive.
Use o modo Batch quando:
A previsão for de que as consultas demorem minutos ou mais para serem concluídas
Os jobs envolverem grandes volumes de dados que possam exceder a memória disponível
As cargas de trabalho forem pipelines de ETL ou processamento de dados em lote
Modo de execução de consultas padrão
| Edição | Série do produto | Modo padrão | Compatível com o modo Batch |
|---|---|---|---|
| Data Warehouse Edition | Reserved mode | Interactive | Não |
| Elastic mode | Sim |
Alterar o modo de execução de consultas
O AnalyticDB for MySQL permite definir o modo de execução em três níveis de granularidade: cluster, grupo de recursos ou consulta individual. Defina o modo no nível mais específico adequado ao seu caso de uso.
Nível de cluster
Alterar o modo no nível de cluster afeta todas as consultas que não possuem uma substituição no nível de grupo de recursos ou de consulta. Na maioria dos casos, evite alternar a instância para o modo Batch; configure o modo Batch no nível de grupo de recursos ou de consulta.
Para alternar o cluster para o modo Interactive:
set adb_config query_type=interactive
Para alternar o cluster para o modo Batch:
set adb_config query_type=batch
Nível de grupo de recursos
Configure modos de execução diferentes para grupos de recursos distintos para executar cargas de trabalho Interactive e Batch em paralelo. Consulte Alterar o modo de execução de consultas de um grupo de recursos.
Nível de consulta
Substitua o modo de execução para uma única consulta usando uma dica SQL:
/* query_type=batch|interactive*/
SELECT * FROM test_table;
Cargas híbridas
Os grupos de recursos oferecem isolamento multilocatário dentro de um único cluster. Atribua o modo Interactive aos grupos de recursos que lidam com consultas em tempo real e o modo Batch aos grupos de recursos que executam jobs de ETL. O cluster processa ambos os tipos de carga de trabalho simultaneamente, com cada grupo de recursos utilizando seus recursos de computação e memória alocados. Consulte Visão geral de grupos de recursos.