Partilhar via


Boas práticas para um desempenho mais rápido em análises embutidas em Power BI

Este artigo fornece recomendações para uma renderização mais rápida de relatórios, dashboards e blocos na sua aplicação.

Observação

Lembre-se de que o tempo de carregamento depende principalmente de elementos relevantes para o relatório e os próprios dados, incluindo os visuais, o tamanho dos dados e a complexidade das consultas e medidas. Para mais informações, consulte o guia de otimização do Power BI.

Ferramentas de atualização e pacotes de SDK

Mantenha as ferramentas e os pacotes SDK atualizados.

  • Use a versão mais recente do Power BI Desktop.
  • Instale a versão mais recente do SDK cliente Power BI. Lançamos continuamente novas melhorias, por isso certifica-te de fazer um acompanhamento de vez em quando.
  • Use a versão mais recente do Tabular Editor.

Inicializar incorporação

Pré-carregamento

Use powerbi.preload() para melhorar o desempenho do utilizador final. O método powerbi.preload() descarrega JavaScript, ficheiros css e outros itens, que são usados posteriormente para incorporar um relatório.

Ligue powerbi.preload() se ainda não estiver a incorporar o relatório imediatamente. Por exemplo, se o conteúdo incorporado do Power BI não aparecer na página inicial, use powerbi.preload() para descarregar e armazenar em cache os itens usados para incorporar o conteúdo.

Inicializar o iFrame

Observação

O Power BI client SDK versão 2.9 é necessário para arrancar o iFrame.

powerbi.bootstrap(element, config) permite começar a embedding antes de todos os parâmetros necessários estarem disponíveis. A API bootstrap prepara e inicializa o iFrame. Ao usar a API de Bootstrap, ainda é necessário chamar powerbi.embed(element, config) no mesmo elemento HTML.

Por exemplo, um dos casos de utilização desta funcionalidade é executar o bootstrap do iFrame e as chamadas de back-end para incorporação, em paralelo.

Sugestão

Use a API de bootstrap sempre que possível para gerar o iFrame antes que fique visível para o utilizador final.

Ao incorporar um relatório ou outros itens do Power BI, certifique-se de que o contentor de embeds faz parte do DOM e que o atributo CSS de exibição não está definido como nenhum , pois isso pode causar comportamentos inesperados. Se quiseres esconder o contentor de embed, considera usar o atributo CSS de visibilidade.

Parâmetros de incorporação

O powerbi.embed(element, config) método recebe um elemento e um parâmetro de configuração. O parâmetro config inclui campos que têm implicações de desempenho.

URL de incorporação

Evite gerar a URL de incorporação você mesmo. Em vez disso, assegura-te de obteres o URL de incorporação chamando a API Obter relatórios, Obter dashboards ou Obter mosaicos. O parâmetro de configuração na URL é usado para melhorias de desempenho.

Permissions

Forneça permissões de Visualização se não pretende incorporar um relatório em modo de edição. Desta forma, não se perde tempo a inicializar componentes que só são usados em modo de edição.

Filtros, favoritos e segmentadores

Normalmente, os visuais dos relatórios são guardados com dados em cache. Os relatórios renderizam os dados em cache enquanto as consultas são executadas. Se forem fornecidos filtros, favoritos ou slicers, os dados em cache não são usados e os visuais só são renderizados depois de a consulta visual terminar.

Se incorporar relatórios com os mesmos filtros, favoritos e slicers, guarde o relatório com os filtros, favoritos e slicers já aplicados. Quando guarda o relatório desta forma, ele é renderizado usando os dados em cache que incluem os filtros, favoritos e segmentadores, o que melhora o desempenho.

Alternância entre relatórios

Ao incorporar vários relatórios no mesmo espaço, não gere um novo iFrame para cada relatório. Em vez disso, incorpore o novo relatório no mesmo iFrame para sobrescrever o relatório anterior. Utilize powerbi.embed(element, config) com uma configuração diferente para incorporar o novo relatório.

Observação

Incorporar relatórios usando o embedding for your customers (também conhecido como cenário de 'a app detém dados') requer o uso de um token embed com permissões para todos os reports e modelos semânticos. Para mais informações, consulte a API de gerar tokens.

Múltiplas imagens

Ao incorporar vários visuais do mesmo relatório, não gere um novo iFrame para cada visual. Use um único iFrame para renderizar o relatório com os visuais especificados.

Ao incorporar múltiplos elementos visuais num único iFrame, considere os seguintes pontos:

  • O Power BI usa iFrames para incorporar um relatório. Por vezes, pode querer adicionar mais conteúdo entre os visuais (por exemplo, texto ou gráficos que não vêm do relatório). Nesse caso, podes precisar de um iFrame diferente para renderizar visuais diferentes. Para melhor desempenho, tente organizar os visuais de forma a usar o menor número possível de iFrames. Para reduzir o número de iFrames, considere usar a funcionalidade de layout personalizado.

  • Se tiver imagens de diferentes relatórios ou modelos semânticos distintos, considere juntar os modelos semânticos e criar um novo relatório para poder incluir todos os visuais no mesmo iFrame.

  • Outra alternativa, se tiveres regiões não contíguas, ou dados de múltiplos modelos semânticos, é criar um dashboard e fixar os visuais nele. Isto permite-lhe:

    • Incorpora os tiles individuais em iFrames não contíguos. Os blocos do painel são mais leves do que os relatórios e carregam mais rápido.
    • Incorpore todo o painel de instrumentos num único iFrame. Isto permite ter imagens de diferentes relatórios ou modelos semânticos num iFrame sem criar um novo relatório.

    Tenha em mente, no entanto, que os blocos do painel não são interativos e não atualizam com a mesma frequência que os visuais.

Armazenamento em cache de consultas

Organizações com capacidade Power BI Premium ou Power BI Embedded podem tirar partido do cache de consultas para acelerar os relatórios associados a um modelo semântico.

Saiba mais sobre cache de consultas no Power BI.

Mede o desempenho

Eventos de performance

Para medir o desempenho embutido, pode usar dois eventos:

  1. Evento carregado: O tempo até o relatório ser inicializado (o logótipo do Power BI desaparece quando o carregamento termina).
  2. Evento renderizado: O tempo até o relatório ser totalmente renderizado, usando os dados reais. O evento renderizado é disparado cada vez que o relatório é re-renderizado (por exemplo, após aplicar filtros). Para medir um relatório, garanta que faça os cálculos no primeiro evento acionado.

Os dados em cache são renderizados quando disponíveis, mas nenhum outro evento é gerado.

Saiba mais sobre gestão de eventos.

Analisador de Desempenho

Para analisar o desempenho dos elementos do relatório, pode usar o Performance Analyzer no Power BI Desktop. O Performance Analyzer permite-lhe ver e registar registos que medem o desempenho de cada elemento do seu relatório.

Saiba mais sobre o Performance Analyzer.

Observação

Lembre-se sempre de comparar o desempenho do relatório embutido com o desempenho em powerbi.com. Isto pode ajudar-te a perceber a origem dos teus problemas de desempenho