Query Store, Azure Monitor e SQL Insights

Comparação entre Query Store, Azure Monitor, SQL Insights, DMVs e Extended Events para monitoramento de Azure SQL.

O exame DP-300, na seção de monitoramento, pergunta qual ferramenta diagnostica qual problema. O Azure SQL oferece diversas ferramentas de diagnóstico que podem parecer semelhantes, e as questões do exame são elaboradas para confundir seus limites. Pense assim: o painel do carro mostra combustível e RPM agora, o registrador de voo preserva o que aconteceu antes do acidente, e um mecânico com inteligência artificial detecta anomalias antes mesmo de você percebê-las. Cada ferramenta cobre um horizonte temporal e uma camada diferente do sistema.

 

Azure Monitor — A Torre de Controle que Observa Tudo de Uma Vez

A torre de controle de um aeroporto não monitora uma única pista — ela vigia o aeroporto inteiro. O Azure Monitor funciona da mesma forma: é uma plataforma de observabilidade unificada que coleta métricas e logs do Azure SQL Database, Managed Instance e SQL Server on Azure VM.

As métricas fluem automaticamente, sem configuração extra. CPU percentual, consumo de DTU, contagem de Workers/Sessions e armazenamento utilizado são coletados por padrão, com retenção de 93 dias. Para análises de longo prazo, encaminhe as métricas a um Log Analytics Workspace.

Os logs de diagnóstico funcionam de forma diferente — estão desativados por padrão. É necessário configurar o primeiro, escolhendo categorias de log e destino: Log Analytics Workspace, Azure Storage ou Event Hubs. Alert Rules permitem disparar e-mails ou webhooks no momento em que a CPU ultrapassa 80%, mantendo a equipe informada sem verificações manuais.

 

Query Store — A Caixa Preta do Desempenho de Consultas

Um registrador de voo preserva horas de dados antes de um acidente, para que investigadores reconstruam o que aconteceu. O Query Store faz o mesmo para consultas: salva planos de execução e estatísticas de tempo de execução em tabelas internas, permitindo consultar qual plano uma query lenta usava às 23h — mesmo investigando na manhã seguinte.

Habilitado por padrão no Azure SQL Database e Managed Instance, seu cenário mais importante é a detecção de : quando uma atualização de estatísticas ou alteração de índice faz o motor escolher um plano pior e o desempenho cai repentinamente. Você compara os planos antes e depois no Query Store e usa para fixar o melhor.

Estatísticas de espera por consulta também ficam armazenadas no Query Store, revelando se a lentidão vem de CPU, bloqueios ou I/O. O período de retenção e a política de captura são configuráveis via ou pelo Azure Portal.

 

DMV — Os Medidores em Tempo Real do Motor

Um médico de emergência observa os sinais vitais do paciente ao vivo, não a partir de registros de ontem. As Dynamic Management Views (DMVs) oferecem essa janela em tempo real no interior do motor SQL Server.

mostra estatísticas de execução de consultas em cache. lista as queries em execução neste momento. agrega os tipos de espera por sessão. Diferente do Query Store, dados de DMV são voláteis — somem ao reiniciar o serviço ou limpar o cache de planos. A regra geral: precisa de histórico? Query Store. Precisa do estado atual agora? DMVs.

 

Extended Events — Rastreamento de Eventos com Baixo Impacto

Para rastrear quando e em qual linha de produção saíram peças defeituosas, você instala sensores que disparam somente quando o defeito ocorre, não continuamente. O Extended Events (XE) segue essa filosofia — captura dados apenas quando um evento SQL Server específico é acionado, mantendo a sobrecarga do servidor ao mínimo.

O Extended Events substitui o SQL Trace e SQL Server Profiler. Você define uma sessão, seleciona exatamente os eventos desejados e escolhe um destino. O destino armazena na memória (dados perdidos ao reiniciar), enquanto persiste no Azure Blob Storage. No Azure SQL Database, crie sessões XE pelo Azure Portal ou via T-SQL.

 

SQL Insights e Intelligent Insights — Painel Unificado e Diagnóstico com IA

Um bom concierge percebe o desconforto do hóspede antes de ele precisar pedir algo. O SQL Insights e o Intelligent Insights dividem esse papel entre si.

é o painel de monitoramento integrado do Azure Monitor para todos os produtos Azure SQL. Quando você quer uma visão única comparando Azure SQL Database, Managed Instance e SQL Server on Azure VM lado a lado, SQL Insights é a resposta. Coleta dados de DMVs sem instalar agente, armazena em Log Analytics Workspace e visualiza via pastas de trabalho predefinidas.

é a detecção de anomalias baseada em IA. Aprende o padrão normal de desempenho, detecta degradações repentinas automaticamente e registra um diagnóstico de causa raiz nos logs de diagnóstico — sem necessidade de queries manuais.

 

Seleção de Ferramenta em um Relance

Elas podem parecer semelhantes, mas servem a propósitos distintos.

| Ferramenta | Camada | Histórico | Cenário Principal | |-|-|-|-| | Azure Monitor | Infraestrutura (CPU, DTU, armazenamento) | 93 dias (métricas) | Alertas de limite, visão multi-produto | | Query Store | Planos de execução + estatísticas | Persistente (configurável) | Regressão de plano, Force Plan | | DMV | Estado em tempo real do motor | Volátil ao reiniciar | Queries ativas, bloqueios atuais | | Extended Events | Captura de eventos específicos | ring_buffer (volátil) / event_file (persistente) | Rastreamento leve, captura de Deadlock | | SQL Insights | Painel unificado baseado em DMV | Retenção no Log Analytics | Comparação multi-instância | | Intelligent Insights | Detecção de anomalias com IA | Logs de diagnóstico | Alerta automático de degradação |

 

Armadilha do Exame — Esquecer o Diagnostic Settings Torna os Logs Invisíveis

Uma equipe cria um novo Azure SQL Database e espera ver as estatísticas de consultas no Log Analytics — mas os logs nunca aparecem. As métricas estão normais. A causa é simples: ninguém configurou o Diagnostic Settings.

No Azure Portal, acesse o recurso, depois Diagnostic Settings e Add Diagnostic Setting. Selecione categorias como , e , e defina Log Analytics Workspace como destino. Os dados começam a chegar em minutos. Sem esse passo, nenhum log de mecanismo sai do serviço Azure SQL — independentemente do que mais seja configurado.

A outra armadilha frequente é confundir Intelligent Insights com Query Store. Ambos detectam problemas de desempenho, mas Intelligent Insights age automaticamente por IA, enquanto Query Store requer análise manual de um DBA. Quando o exame mencionar "detectado automaticamente," pense em Intelligent Insights.

 

Resumo do Exame

"Plano de execução de query lenta de ontem à noite" -- Query Store "Regressão de plano, quero forçar o plano anterior" -- Query Store Force Plan "Lista de queries em execução agora" -- DMV (sys.dm_exec_requests) "Alerta quando CPU ultrapassar 80%" -- Azure Monitor Alert Rule "Enviar logs de diagnóstico ao Log Analytics" -- Configurar Diagnostic Settings primeiro "Painel único para todos os produtos Azure SQL" -- SQL Insights "IA detecta automaticamente degradação de desempenho" -- Intelligent Insights "Capturar eventos de Deadlock com mínimo impacto" -- Extended Events "Estatísticas de consulta devem sobrevivir a reinicialização" -- Query Store (não DMVs) "ring_buffer vs event_file" -- ring_buffer na memória (volátil), event_file no Blob (persistente)

Query Store = caixa preta de consultas, DMV = medidor em tempo real, Azure Monitor = torre de controle de infraestrutura, Intelligent Insights = autodiagnóstico com IA

Voltar à lista do blog