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.
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 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. No entanto, ainda é permitido visualizar, criar e assim por diante.
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. Entretanto, 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. Essa avaliação 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 essa etapa, os rastreamentos são perdidos.
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.
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. Quando há necessidade de mais detalhamento para uma operação específica, você pode examinar a ID do grupo e exibir as operações correspondentes que foram agrupadas na exibição detalhada.
Durante a atualização no Editor do Power Query, há muito sendo feito em segundo plano para tentar lhe proporcionar uma experiência de usuário fluida. Como exemplo, ao Atualizar a Visualização, o avaliador executa a etapa final de cada consulta fornecida. Então, em segundo plano, ele executa sequencialmente n-1 etapas, n-2 etapas e assim por diante. Se você voltar pelas etapas, elas já estã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ê obtém as informações de comparação de etapas corretas, devido às avaliações posteriores que efetuam pull de dados armazenados em cache.
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, quando você pressiona atualizar duas vezes, há 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. Quando você executa várias sessões de gravação de diagnóstico, vê esse número continuar crescendo nas diferentes sessões.
Para resumir, quando você começa a gravar, pressiona a avaliação uma vez e interrompe a gravação, alguns números de IDs aparecem no diagnóstico. Mas, como você só realizou uma ação, todos eles sã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.
O nome da Consulta no painel à esquerda do editor do Power Query.
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.
A categoria da operação.
Esses dados informam que tipo de fonte de dados você está acessando, como SQL ou Oracle.
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.
A hora em que a operação começou.
A hora em que a operação terminou.
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.
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. 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.
O recurso que você está acessando para dados. O formato exato desse recurso depende 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 DirectQuery (em relação ao Power Query), quando habilitado, somente 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 na fonte de dados de 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. No entanto, outras 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 diversas 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 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.
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.
O número de linhas retornadas por uma Consulta de Fonte de Dados. Não habilitada em todos os conectores.
Comprimento do conteúdo retornado por Solicitações HTTP, conforme normalmente definido. Esse esquema não está habilitado em todos os conectores e não é preciso para conectores que recuperam solicitações em partes.
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.
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 desta avaliação corresponde ao início desta 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.
A combinação de duas (ou mais) operações não ocorre quando 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.
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.
Corresponde à Consulta/Etapa usada como uma partição 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.
Lista de caminhos de recursos para todos os recursos acessados por essa partição e, em geral, identifica exclusivamente uma fonte de dados.
Lista de chaves de partição das quais a partição atual depende (essa lista pode ser usada para criar um grafo).
A expressão que é avaliada sobre a consulta/etapa da partição. Em vários casos, coincide com a consulta/etapa.
Hora em que a avaliação foi iniciada nessa partição.
Hora em que a avaliação terminou nessa partição.
Um valor derivado de Hora de Término menos Hora de Início.
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.
Duração exclusiva como porcentagem.
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.
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.
Percentual do tempo gasto pelos processadores na consulta. Esse percentual pode ser maior que 100% devido a vários processadores.
Duração total do tempo de processador gasto na consulta.
Velocidade de taxa de transferência dos dados recebidos da fonte de dados, expressa em bytes por segundo.
Quantidade de memória virtual reservada pela avaliação.
Quantidade de memória reservada pela avaliação.