Diagnóstico de consultas

Com o Diagnóstico de Consultas, pode obter uma melhor compreensão do que o Power Query está a fazer na criação e no momento da atualização no Power BI Desktop. Embora estejamos expandindo esse recurso no futuro, incluindo a adição da capacidade de usá-lo durante atualizações completas, neste momento você pode usá-lo para entender que tipo de consultas você está emitindo, quais lentidões você pode encontrar durante a atualização de criação e que tipo de eventos em segundo plano estão acontecendo.

Para utilizar o Diagnóstico de Consultas, aceda ao separador Ferramentas no friso do editor do Power Query.

Captura de ecrã das funcionalidades de diagnóstico de consulta no friso Ferramentas do Power Query.

Por padrão, o Diagnóstico de Consulta pode exigir direitos administrativos para ser executado (dependendo da política de TI). Se você não conseguir executar o Diagnóstico de Consulta, abra a página de opções do Power BI Desktop e, na guia Diagnóstico, selecione Habilitar no Editor de Consultas (não requer execução como administrador). Esta seleção impede que você possa rastrear diagnósticos ao fazer uma atualização completa no Power BI em vez do editor do Power Query. Mas permite que você ainda o use ao visualizar, criar e assim por diante.

Captura de tela das opções de Diagnóstico de Consulta com a opção Ativar no Editor de Consultas enfatizada.

Sempre que inicia diagnósticos, o Power Query começa a rastrear todas as avaliações que causar. A avaliação que a maioria dos usuários pensa é quando você pressiona refresh ou quando recupera dados pela primeira vez. Mas há muitas ações que podem causar avaliações, dependendo do conector. Por exemplo, com o conector SQL, quando você recupera uma lista de valores para filtrar, isso também daria início a uma avaliação, mas não se associa a uma consulta de usuário e isso é representado no diagnóstico. Outras consultas geradas pelo sistema podem incluir o navegador ou a experiência get data.

Quando prime o Passo de Diagnóstico, o Power Query executa uma avaliação especial apenas do passo que está a ver. Em seguida, ele mostra o diagnóstico para essa etapa, sem mostrar o diagnóstico para outras etapas na consulta. Esta avaliação pode tornar muito mais fácil obter uma visão restrita de um problema.

É importante que, se você estiver gravando todos os rastreamentos do Iniciar diagnóstico, pressione Parar diagnóstico. Parar o diagnóstico permite que o motor colete os vestígios gravados e os analise na saída adequada. Sem este passo, perdem-se vestígios.

Tipos de diagnóstico

Atualmente, fornecemos três tipos de diagnóstico, um dos quais tem dois níveis de detalhe.

O primeiro desses diagnósticos são os diagnósticos primários, que têm uma visão detalhada e uma visão resumida. A vista resumida destina-se a dar-lhe uma visão imediata sobre onde o tempo está a ser gasto na sua consulta. A visão detalhada é muito mais profunda, linha por linha, e é, em geral, necessária apenas para diagnósticos sérios por usuários avançados.

Para esse modo de exibição, alguns recursos, como a coluna Consulta da Fonte de Dados, estão atualmente disponíveis apenas em determinados conectores. Trabalharemos para ampliar a amplitude dessa cobertura no futuro.

As partições de privacidade de dados fornecem uma melhor compreensão das partições lógicas usadas para a privacidade de dados.

Nota

O Power Query pode executar avaliações que talvez você não tenha acionado diretamente. Algumas dessas avaliações são realizadas para recuperar metadados para que possamos otimizar melhor nossas consultas ou fornecer uma melhor experiência ao usuário (como recuperar a lista de valores distintos dentro de uma coluna que são exibidos na experiência Filtrar Linhas). Outros podem estar relacionados à forma como um conector lida com avaliações paralelas. Ao mesmo tempo, se você vir em seu diagnóstico de consulta consultas repetidas que você não acredita que façam sentido, sinta-se à vontade para entrar em contato por meio de canais de suporte normais — seu feedback é como melhoramos nosso produto.

Vista resumida vs. vista detalhada

O diagnóstico de consulta fornece dois modos de exibição: resumidos e detalhados. A exibição resumida "recolhe" várias operações relacionadas em uma única operação. Neste processo, os detalhes coletados por cada operação são combinados e as durações exclusivas são somadas. Nenhuma informação é perdida como parte deste processo.

A visão resumida fornece uma visão geral do que ocorreu durante uma avaliação para facilitar a revisão de alto nível. Se for necessário um detalhamento adicional para uma operação específica, você poderá examinar o ID do grupo e exibir as operações correspondentes que foram agrupadas na exibição detalhada.

Explicar as avaliações múltiplas

Quando ocorre uma atualização no editor do Power Query, há muito feito nos bastidores para tentar proporcionar-lhe uma experiência de utilizador fluente. Por exemplo, quando você atualiza a visualização, o avaliador executa a etapa final de cada consulta. Mas então, em segundo plano, ele executa sequencialmente n-1 passos, n-2, passos e assim por diante. Então, se você voltar atrás em seus passos, ele já está disponível.

Para fornecer um desempenho mais alto, atualmente algum cache acontece para que ele não precise executar novamente todas as partes do plano de consulta final à medida que ele volta pelas etapas. Embora esse cache seja útil para a criação normal, isso significa que você nem sempre obtém informações corretas de comparação de etapas devido a avaliações posteriores que extraem dados armazenados em cache.

Esquema de diagnóstico

Id

Ao analisar os resultados de uma gravação, é importante filtrar a sessão de gravação por Id, para que colunas como % de duração exclusiva façam sentido.

Id é um identificador composto. É formado por dois números: um antes do ponto e outro depois. O primeiro número é o mesmo para todas as avaliações que resultaram de uma única ação do usuário. Em outras palavras, se você pressionar atualizar duas vezes, há dois números diferentes à frente do ponto, um para cada atividade do usuário realizada. Esta numeração é sequencial para um determinado registo de diagnóstico.

O segundo número representa uma avaliação pelo motor. Este número é sequencial durante o tempo de vida do processo em que a avaliação está enfileirada. Se você executar várias sessões de gravação de diagnóstico, esse número continuará a crescer nas diferentes sessões.

Para resumir, se você começar a gravar, pressione a avaliação uma vez e interrompa a gravação, algum número de Ids aparecerá no diagnóstico. Mas como você só tomou uma ação, todas são 1.1, 1.2, 1.3 e assim por diante.

A combinação do activityId e do evaluationId, separados pelo ponto, fornece um identificador exclusivo para uma avaliação de uma única sessão de gravação.

Query

O nome da Consulta no painel esquerdo do editor do Power Query.

Passo

O nome do Passo no painel direito do editor do Power Query. Itens como menus suspensos de filtro geralmente se associam à etapa em que você filtra, mesmo que você não esteja atualizando a etapa.

Categoria

A categoria da operação.

Tipo de fonte de dados

Esses dados informam que tipo de fonte de dados você está acessando, como SQL ou Oracle.

Operação

A operação real que está sendo executada. Esta operação pode incluir o trabalho do avaliador, abrir conexões, enviar consultas para a fonte de dados e muito mais.

Hora de início

A hora em que a operação começou.

Hora de fim

A hora em que a operação terminou.

Duração exclusiva (%)

A coluna Duração Exclusiva de um evento é a quantidade de tempo que o evento esteve ativo. Isso contrasta com o valor "duration" que resulta da subtração dos valores na coluna Hora de Início e na coluna Hora de Término de um evento. Esse valor de "duração" representa o tempo total decorrido entre quando um evento começou e quando terminou, o que pode incluir momentos em que o evento esteve em um estado suspenso ou inativo e outro evento estava consumindo recursos.

A % de duração exclusiva soma aproximadamente 100% dentro de uma determinada avaliação, representada pela coluna Id. Por exemplo, se você filtrar em linhas com Id 1.x, as porcentagens de Duração Exclusiva somarão aproximadamente 100%. Esse não é o caso se você somar os valores % de Duração Exclusiva de todas as linhas em uma determinada tabela de diagnóstico.

Duração exclusiva

O tempo absoluto, em vez de %, de duração exclusiva. A duração total (ou seja, duração exclusiva + tempo em que o evento esteve inativo) de uma avaliação pode ser calculada de duas formas:

  • Encontre a operação chamada "Avaliação". A diferença entre Hora de Término e Hora de Início resulta na duração total de um evento.

  • Subtraia a hora mínima de início de todas as operações em um evento da hora máxima de término. Nos casos em que as informações coletadas para um evento não contabilizam a duração total, uma operação chamada "Trace Gaps" é gerada para contabilizar esse intervalo de tempo.

Recurso

O recurso que você está acessando para obter dados. O formato exato deste recurso depende da fonte de dados.

Consulta da fonte de dados

O Power Query faz algo chamado dobragem, que é o ato de executar o maior número possível de partes da consulta na fonte de dados back-end. No modo DirectQuery (sobre o Power Query), quando ativado, apenas as transformações que dobram são executadas. No modo de importação, as transformações que não podem ser dobradas são executadas localmente.

A coluna Consulta da Fonte de Dados permite que você veja a consulta ou a solicitação/resposta HTTP enviada em relação à fonte de dados back-end. À medida que você cria sua Consulta no editor, muitas Consultas de Fonte de Dados são emitidas. Algumas dessas consultas são a Consulta de Fonte de Dados final real para renderizar a visualização. Mas outros podem ser para criação de perfil de dados, menus suspensos de filtro, informações sobre junções, recuperação de metadados para esquemas e qualquer número de outras pequenas consultas.

Em geral, você não deve se preocupar com o número de consultas de fonte de dados emitidas, a menos que haja motivos específicos para se preocupar. Em vez disso, você deve se concentrar em garantir que o conteúdo adequado esteja sendo recuperado. Esta coluna também pode ajudar a determinar se a avaliação do Power Query foi totalmente dobrada.

Informações adicionais

Há muitas informações recuperadas pelos nossos conectores. Grande parte é esfarrapada e não se encaixa bem em uma hierarquia de colunas padrão. Essas informações são colocadas em um registro na coluna de informações adicionais. As informações registradas a partir de conectores personalizados também aparecem aqui.

Contagem de linhas

O número de linhas retornadas por uma Consulta de Fonte de Dados. Não ativado em todos os conectores.

Comprimento do conteúdo

Comprimento do conteúdo retornado por solicitações HTTP, conforme comumente definido. Esse esquema não está habilitado em todos os conectores e não é preciso para conectores que recuperam solicitações em partes.

É consulta do usuário

Um valor booleano que indica se é uma consulta criada pelo usuário e presente no painel esquerdo ou se foi gerada por alguma outra ação do usuário. Outras ações do usuário podem incluir itens como a seleção de filtros ou o uso do navegador na experiência obter dados.

Caminho

Path representa a rota relativa da operação quando visto como parte de uma árvore de intervalos para todas as operações dentro de uma única avaliação. No topo (raiz) da árvore, há uma única operação chamada Avaliação com o caminho "0". A hora de início desta avaliação corresponde ao início desta avaliação como um todo. A hora final desta avaliação mostra quando toda a avaliação terminou. Esta operação de nível superior tem uma duração exclusiva de 0, uma vez que o seu único objetivo é servir como raiz da árvore.

Outras operações ramificam-se a partir da raiz. Por exemplo, uma operação pode ter "0/1/5" como caminho. Este caminho seria entendido como:

  • 0: raiz da árvore
  • 1: pai da operação atual
  • 5: índice de funcionamento corrente

A operação "0/1/5" pode ter um nó filho, nesse caso, o caminho tem a forma "0/1/5/8", com 8 representando o índice da criança.

ID do Grupo

A combinação de duas (ou mais) operações não ocorre se levar à perda de detalhes. O agrupamento é projetado para aproximar "comandos" executados durante a avaliação. Na vista detalhada, várias operações partilham um ID de Grupo, correspondente aos grupos que são agregados na vista Resumo.

Como acontece com a maioria das colunas, o ID do grupo só é relevante dentro de uma avaliação específica, conforme filtrado pela coluna Id.

Esquema de partições de privacidade de dados

Id

O mesmo que o ID para os outros resultados de diagnóstico de consulta. A parte inteira representa um único ID de atividade, enquanto a parte fracionária representa uma única avaliação.

Chave de partição

Corresponde à Consulta/Etapa usada como uma partição de firewall.

Grupo de firewall

Categorização que explica por que essa partição deve ser avaliada separadamente, incluindo detalhes sobre o nível de privacidade da partição.

Recursos acessados

Lista de caminhos de recursos para todos os recursos acessados por essa partição e, em geral, identifica exclusivamente uma fonte de dados.

Entradas de partição

Lista de chaves de partição das quais a partição atual depende (esta lista pode ser usada para construir um gráfico).

Expression

A expressão que é avaliada na parte superior da consulta/etapa da partição. Em vários casos, coincide com a consulta/etapa.

Hora de início

Hora em que a avaliação começou para esta partição.

Hora de fim

Hora em que a avaliação terminou para esta partição.

Duração

Um valor derivado de Hora de Término menos Hora de Início.

Duração exclusiva

Se as partições são assumidas para executar em um único thread, duração exclusiva é a duração "real" que pode ser atribuída a esta partição.

Duração exclusiva %

Duração exclusiva em percentagem.

Diagnóstico

Esta coluna só aparece quando o diagnóstico de consulta "Agregado" ou "Detalhado" também é capturado, permitindo que o usuário corresponda entre as duas saídas de diagnóstico.

Esquema de contadores de desempenho

Quando executa contadores de desempenho, cada meio segundo do Power Query tira um instantâneo da utilização de recursos. Esse instantâneo não é útil para consultas muito rápidas, mas pode ser útil para consultas que consomem muito mais recursos.

% de tempo do processador

Porcentagem do tempo gasto pelos processadores na consulta. Essa porcentagem pode chegar acima de 100% devido a vários processadores.

Tempo total do processador

Duração total do tempo do processador gasto na consulta.

Bytes de dados de E/S por segundo

Velocidade de transferência dos dados recebidos da fonte de dados, expressa em bytes por segundo.

Confirmar (bytes)

Quantidade de memória virtual reservada pela avaliação.

Conjunto de trabalho (bytes)

Quantidade de memória reservada pela avaliação.