Diagnóstico de consulta

Com o Diagnóstico de Consulta, você pode obter uma melhor compreensão do que o Power Query está fazendo durante a 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 as 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 criação de atualização e que tipo de eventos em segundo plano estão acontecendo.

Para usar o Diagnóstico de Consulta, acesse a guia Ferramentas na faixa de opções do editor do Power Query.

Diagnóstico de consulta.

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 e, na guia Diagnóstico, selecione Habilitar no Editor de Consultas (não requer a execução como administrador). Essa seleção impede que você possa rastrear o diagnóstico ao fazer uma atualização completa no Power BI em vez do Editor do Power Query, mas permite que você o use para visualizar, criar e assim por diante.

Opções do Diagnóstico de Consulta.

Sempre que você inicia o diagnóstico, o Power Query começa a rastrear as avaliações que você causou. A avaliação que a maioria dos usuários imagina é aquela em que você pressiona atualizar 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 de SQL, quando você recupera uma lista de valores a serem filtrados, isso também inicia uma avaliação, mas ela não se associa a uma consulta do usuário e isso é representado no diagnóstico. Outras consultas geradas pelo sistema podem incluir o navegador ou a experiência de obter dados.

Quando você pressiona Etapa de Diagnóstico, o Power Query executa uma avaliação especial apenas da etapa que você está olhando. Em seguida, ele mostra o diagnóstico dessa etapa, sem mostrar o diagnóstico de outras etapas da consulta. Isso pode levar mais facilmente a uma visão limitada sobre um problema.

É importante que, se você estiver gravando todos os rastreamentos do Diagnóstico Inicial, pressione Parar diagnóstico. Interromper o diagnóstico permitirá que o mecanismo colete os rastreamentos gravados e analise-os na saída adequada. Sem esta etapa, você perderá os rastreamentos.

Tipos de diagnóstico

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

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 visão resumida tem como objetivo fornecer um insight imediato de como o tempo está sendo gasto em sua consulta. A visão detalhada é muito mais aprofundada, linha por linha e é, em geral, necessária apenas para um diagnóstico sério por usuários de energia.

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

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

Observação

O Power Query pode executar avaliações que talvez você não tenha disparado diretamente. Algumas dessas avaliações são realizadas para recuperar metadados para que possamos otimizar ainda mais nossas consultas ou fornecer uma melhor experiência do usuário (como recuperar a lista de valores distintos dentro de uma coluna exibida na experiência Filtrar Linhas). Outras podem estar relacionadas a como um conector lida com avaliações paralelas. Ao mesmo tempo, se você vir consultas repetidas em seu diagnóstico de consulta, que você acredita que não fazem sentido, não hesite em entrar em contato por meio de canais de suporte normais – seus comentários servem para melhorarmos nosso produto.

Exibição resumida versus Detalhada

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

A exibição resumida fornece uma visão geral do que ocorreu durante uma avaliação para oferecer um revisão rápida de alto nível. Se houver necessidade de mais detalhamento para uma operação específica, o usuário poderá examinar a ID do grupo e exibir as operações correspondentes que foram agrupadas na exibição detalhada.

Explicando várias avaliações

Durante a atualização no editor de Power Query, há muito sendo feito nos bastidores para tentar lhe proporcionar uma experiência de usuário fluida. Como exemplo, ao Atualizar a Visualização, o avaliador executará a etapa final de cada consulta fornecida. Mas, em segundo plano, ele executa sequencialmente as etapas n-1, n-2 e assim por diante, de modo que, se você retroceder nas etapas, elas já estarão disponíveis.

Para oferecer um desempenho mais alto, atualmente ocorre algum cache para que não seja necessário executar novamente todas as partes do plano da consulta final à medida que ele volta nas etapas. Embora esse cache seja útil para a criação normal, ele significa que nem sempre você obterá as informações de comparação de etapas corretas, devido às avaliações posteriores que efetuam pull de 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.

A ID é um identificador composto. Ela é formada por dois números: um antes do ponto e outro depois. O primeiro número é o mesmo para todas as avaliações resultantes de uma única ação do usuário. Em outras palavras, se você pressionar atualizar duas vezes, haverá dois números diferentes antes do ponto, um para cada atividade do usuário realizada. Essa numeração é sequencial para uma determinada gravação de diagnóstico.

O segundo número representa uma avaliação do mecanismo. Esse número é sequencial para 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, verá esse número continuar crescendo nas diferentes sessões.

Para resumir, se você começar a gravar, pressionar a avaliação uma vez e interromper a gravação, você terá alguns números de IDs em seu diagnóstico. Mas, como você só realizou uma ação, todos eles serão 1.1, 1.2, 1.3, e assim por diante.

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

Consulta

O nome da Consulta no painel à esquerda do editor do Power Query.

Etapa

O nome da Etapa no painel à direita do editor do Power Query. Itens como menus suspensos de filtro geralmente associam-se à etapa em que você está filtrando, mesmo que você não esteja atualizando a etapa.

Categoria

A categoria da operação.

Variante de fonte de dados

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

Operação

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

Hora de início

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

Hora de término

A hora em que a operação terminou.

Duração exclusiva (%)

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

O percentual de duração exclusiva totaliza aproximadamente 100% dentro de uma determinada avaliação, conforme representado pela coluna ID. Por exemplo, se você filtrar linhas com id 1.x, os percentuais de Duração Exclusiva somarão aproximadamente 100%. Esse não é o caso se você somar os valores de % de Duração Exclusiva de todas as linhas em uma determinada tabela de diagnóstico.

Duração exclusiva

O tempo absoluto, em vez do % da duração exclusiva. A duração total (ou seja, duração exclusiva + tempo em que o evento estava inativo) de uma avaliação pode ser calculada por meio de uma dessas maneiras:

  • Localize a operação chamada "Avaliação". A diferença entre Hora de Término e Hora de Início resultará 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. Observe que, em casos em que as informações coletadas de um evento não representam a duração total, uma operação chamada "Lacunas de Rastreamento" é gerada para considerar esse intervalo de tempo.

Recurso

O recurso que você está acessando para dados. O formato exato desse 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 de back-end. No modo de Consulta Direta (em relação ao Power Query), quando habilitado, somente as transformações que dobram serão executadas. No modo de importação, as transformações que não podem ser dobradas serão executadas localmente.

A coluna Consulta da Fonte de Dados permite que você veja a consulta ou a solicitação/resposta HTTP enviada na fonte de dados de back-end. À medida que você cria sua consulta no editor, muitas Consultas de Fonte de Dados serão emitidas. Algumas delas são a Consulta de Fonte de Dados final real para renderizar a visualização, mas outras podem ser para criação de perfil de dados, lista suspensa de filtros, informações sobre junções, recuperação de metadados para esquemas e outras consultas pequenas.

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 verificar se o conteúdo adequado está sendo recuperado. Essa 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 por nossos conectores. Grande parte é irregular 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. Informações registradas 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 habilitada em todos os conectores.

Content length

Comprimento do conteúdo retornado por Solicitações HTTP, conforme normalmente definido. Isso não está habilitado em todos os conectores e não será preciso para conectores que recuperam solicitações em partes.

Consulta É usuário

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

Caminho

O caminho representa a rota relativa da operação quando exibido como parte de uma árvore de intervalo para todas as operações dentro de uma única avaliação. Na parte superior (raiz) da árvore, há uma única operação chamada Avaliação com o caminho "0". A hora de início dessa avaliação corresponde ao início dessa avaliação como um todo. A hora de término dessa avaliação mostra quando toda a avaliação foi concluída. Essa operação de alto nível tem uma duração exclusiva igual a 0, pois sua única finalidade é servir como a raiz da árvore.

Operações adicionais ramificam da raiz. Por exemplo, uma operação pode ter "0/1/5" como um caminho. Esse caminho seria entendido como:

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

A operação "0/1/5" pode ter um nó filho, nesse caso, o caminho teria o formato "0/1/5/8", com 8 representando o índice do filho.

ID do grupo

A combinação de duas (ou mais) operações não ocorrerá se isso levar à perda de detalhes. O agrupamento foi projetado para aproximar "comandos" executados durante a avaliação. Na exibição detalhada, várias operações compartilham uma ID de Grupo, correspondente aos grupos agregados na exibição Resumida.

Assim como acontece com a maioria das colunas, a 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 a ID dos outros resultados de diagnóstico de consulta. A parte inteira representa uma única 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 (essa lista pode ser usada para criar um grafo).

Expression

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

Hora de início

Hora em que a avaliação foi iniciada nessa partição.

Hora de término

Hora em que a avaliação terminou nessa partição.

Duration

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

Duração exclusiva

Se as partições tiverem que ser executadas em um único thread, a duração exclusiva será a duração "real" que pode ser atribuída a essa partição.

Percentual da duração exclusiva

Duração exclusiva como porcentagem.

Diagnósticos

Essa coluna só aparece quando o diagnóstico de consulta "Agregado" ou "Detalhado" também é capturado, permitindo que o usuário faça a correspondência entre as duas saídas de diagnóstico.

Esquema de contadores de desempenho

Quando você executa contadores de desempenho, a cada meio segundo o 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 usam muito mais recursos.

% de tempo do processador

Percentual do tempo gasto pelos processadores na consulta. Esse percentual pode alcançar acima de 100% devido a vários processadores.

Tempo total de processador

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

Bytes de dados de E/S por segundo

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

Compromisso (bytes)

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

Conjunto de trabalho (bytes)

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

Leituras adicionais

Como gravar o diagnóstico em vários casos de uso

Mais informações sobre como ler e visualizar seus rastreamentos gravados

Como entender quais operações de consulta estão dobrando usando o Diagnóstico de Consulta