Práticas recomendadas para um desempenho mais rápido na análise incorporada do Power BI
Este artigo fornece recomendações para renderização mais rápida de relatórios, painéis e blocos em seu aplicativo.
Nota
Lembre-se de que o tempo de carregamento depende principalmente de elementos relevantes para o relatório e os dados em si, incluindo elementos visuais, o tamanho dos dados e a complexidade das consultas e medidas. Para obter mais informações, consulte o guia de otimização do Power BI.
Ferramentas de atualização e pacotes 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 do cliente Power BI. Lançamos continuamente novas melhorias, por isso certifique-se de acompanhar de tempos em tempos.
- Use a versão mais recente do Editor de tabelas.
Inicializar incorporação
Preload
Use powerbi.preload()
para melhorar o desempenho do usuário final. O método powerbi.preload()
baixa JavaScript, arquivos css e outros itens, que são usados posteriormente para incorporar um relatório.
Ligue powerbi.preload()
se você não estiver incorporando o relatório imediatamente. Por exemplo, se o conteúdo incorporado do Power BI não aparecer na home page, use powerbi.preload()
para baixar e armazenar em cache os itens usados para incorporar o conteúdo.
Inicializando o iFrame
Nota
O SDK do cliente Power BI versão 2.9 é necessário para inicializar o iFrame.
powerbi.bootstrap(element, config)
Permite que você comece a incorporar antes que todos os parâmetros necessários estejam disponíveis. A API de bootstrap prepara e inicializa o iFrame.
Ao usar a API de bootstrap, ainda é necessário chamar powerbi.embed(element, config)
o mesmo elemento HTML.
Por exemplo, um dos casos de uso desse recurso é executar o bootstrap do iFrame e as chamadas de back-end para incorporação, em paralelo.
Gorjeta
Use a API de bootstrap quando possível para gerar o iFrame antes que ele fique visível para o usuário final.
Ao incorporar um relatório ou outros itens do Power BI, verifique se o contêiner de incorporação faz parte do DOM e se o atributo CSS de exibição não está definido como nenhum , pois isso pode causar comportamentos inesperados. Se você quiser ocultar o contêiner de incorporação, considere usar o atributo CSS de visibilidade.
Incorporar parâmetros
O powerbi.embed(element, config)
método recebe um elemento e um parâmetro config. O parâmetro config inclui campos que têm implicações de desempenho.
URL de incorporação
Evite gerar o URL de incorporação por iniciativa própria. Em vez disso, certifique-se de obter a URL de incorporação chamando Obter relatórios, Obter painéis ou Obter API de blocos. O parâmetro config na URL é usado para melhorias de desempenho.
Permissões
Forneça permissões de visualização se não pretender incorporar um relatório no modo de edição. Dessa forma, o tempo não é gasto inicializando componentes que são usados apenas no modo de edição.
Filtros, marcadores e segmentações de dados
Normalmente, os visuais de relatório são salvos com dados armazenados em cache. Os relatórios processam os dados armazenados em cache enquanto as consultas são executadas. Se filtros, marcadores ou segmentações de dados forem fornecidos, os dados armazenados em cache não serão usados e os elementos visuais serão renderizados somente após o término da consulta visual.
Se você incorporar relatórios com os mesmos filtros, favoritos e segmentações de dados, salve o relatório com os filtros, marcadores e segmentações de dados já aplicados. Quando você salva o relatório dessa forma, ele é renderizado usando os dados armazenados em cache que incluem os filtros, marcadores e segmentações de dados, o que melhora o desempenho.
Alternar 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 substituir o relatório anterior. Use powerbi.embed(element, config)
com uma configuração diferente para incorporar o novo relatório.
Nota
A incorporação de relatórios usando a incorporação para seus clientes (também conhecida como um cenário de "dados proprietários de aplicativos"), requer o uso de um token de incorporação com permissões para todos os relatórios e modelos semânticos. Para obter mais informações, consulte a API de geração de token.
Vários elementos visuais
Ao incorporar vários elementos 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 elementos visuais especificados.
Ao incorporar vários elementos visuais em um único iFrame, considere os seguintes pontos:
O Power BI usa iFrames para incorporar um relatório. Às vezes, talvez você queira adicionar mais conteúdo entre os elementos visuais (por exemplo, texto ou elementos gráficos que não vêm do relatório). Nesse caso, você pode precisar de um iFrame diferente para renderizar visuais diferentes. Para obter o melhor desempenho, tente organizar os elementos visuais para que você use o menor número possível de iFrames. Para reduzir o número de iFrames, considere usar o recurso de layout personalizado.
Se você tiver elementos visuais de relatórios diferentes ou modelos semânticos diferentes, considere unir os modelos semânticos e criar um novo relatório para que você possa incluir todos os elementos visuais no mesmo iFrame.
Outra alternativa, se você tiver regiões não contíguas, ou dados de vários modelos semânticos, é criar um painel e fixar os elementos visuais nele. Isto permite-lhe:
- Incorpore os blocos 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 em um iFrame. Isso permite que você tenha visuais de diferentes relatórios ou modelos semânticos em um 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 são atualizados com a mesma frequência que os visuais.
Cache de consultas
As organizações com capacidade Power BI Premium ou Power BI Embedded podem tirar proveito do cache de consultas para acelerar relatórios associados a um modelo semântico.
Saiba mais sobre o cache de consultas no Power BI.
Meça o desempenho
Eventos de desempenho
Para medir o desempenho incorporado, você pode usar dois eventos:
- Evento carregado: o tempo até que o relatório seja inicializado (o logotipo do Power BI desaparece quando a carga é concluída).
- Evento renderizado: o tempo até que o relatório seja totalmente renderizado, usando os dados reais. O evento renderizado é acionado sempre que o relatório é reprocessado (por exemplo, após a aplicação de filtros). Para medir um relatório, certifique-se de fazer os cálculos no primeiro evento gerado.
Os dados armazenados em cache são renderizados quando disponíveis, mas nenhum outro evento é gerado.
Saiba mais sobre a manipulação de eventos.
Analisador de Desempenho
Para examinar o desempenho dos elementos de relatório, você pode usar o Analisador de Desempenho no Power BI Desktop. O Analisador de Desempenho permite que você veja e registre logs que medem o desempenho de cada um dos elementos do relatório.
Saiba mais sobre o Performance Analyzer.
Nota
Lembre-se sempre de comparar o desempenho do relatório incorporado com o desempenho no powerbi.com. Isso pode ajudá-lo a entender a origem de seus problemas de desempenho