Escolar Documentos
Profissional Documentos
Cultura Documentos
Você precisa examinar o modelo de dados para identificar a causa raiz dos
problemas de desempenho e fazer alterações para otimizá-lo.
Consulta DAX
O tempo necessário para o visual enviar a consulta, junto com o tempo
necessário para o Analysis Services retornar os resultados.
Exibição de visual
O tempo necessário para o visual ser renderizado na tela, incluindo o tempo
necessário para recuperar imagens da Web ou geocódigo.
Outros
O tempo que levou para o visual preparar consultas, aguardar a conclusão de
outros visuais ou executar outras tarefas de processamento em segundo plano.
Quando essa categoria exibe uma duração longa, a única maneira real de
reduzir essa duração é otimizar as consultas DAX de outros visuais ou reduzir
o número de visuais no relatório.
Captura de tela
mostrando as categorias nos resultados do Performance Analyzer
Os resultados do teste de análise ajudam a entender o comportamento do
modelo de dados e a identificar os elementos que precisa otimizar.
Visuais
Quando identifica visuais como o gargalo que gera mau desempenho, você
precisa encontrar uma forma de aprimorar o desempenho com impacto
mínimo sobre a experiência do usuário.
Examine o número de campos em cada visual. Quanto mais visuais você tiver
no relatório, maior será a chance de ter problemas de desempenho. Além
disso, quanto mais visuais, mais o relatório pode parecer poluído e perder
clareza.
Captura de tela de um
exemplo de
tempo de duração grande no Performance Analyzer.
O Performance Analyzer realça possíveis problemas, mas não informa o que
precisa ser feito para aprimorá-los. Talvez você queira fazer mais
investigações sobre o motivo pelo qual essa medida demora muito para ser
processada. Você pode usar o DAX Studio para investigar as consultas com
mais detalhes.
Para isso, selecione Copiar Consulta para copiar a fórmula de cálculo para a
área de transferência e cole-a no DAX Studio. Após realizar o procedimento,
poderá examinar a etapa de cálculo com mais detalhes. Neste exemplo, você
está tentando contar o número total de produtos com quantidades de pedidos
maiores ou iguais a cinco.
Por exemplo, uma coluna de um lado que contém valores exclusivos pode
estar configurada incorretamente como uma coluna de muitos lados. Você
aprenderá mais sobre como a cardinalidade afeta o desempenho mais adiante
neste módulo.
Colunas
É uma melhor prática não importar colunas de dados que não são necessárias.
Para evitar a exclusão de colunas no Editor do Power Query, lide com elas
na origem ao carregar os dados no Power BI Desktop.
No entanto, se for impossível remover colunas redundantes da consulta de
origem ou se os dados já tiverem sido importados no estado bruto, você
sempre poderá usar o Editor do Power Query para examinar cada coluna.
Considere se você realmente precisa de cada coluna e tente identificar o
benefício que cada uma delas adiciona ao modelo de dados. Se concluir que
uma coluna não agrega nenhum valor, remova-a do modelo de dados.
Por exemplo, suponha que você tem uma coluna de ID com milhares de linhas
exclusivas. Você sabe que não usará essa coluna específica em uma relação e,
portanto, ela não será usada em um relatório. Sendo assim, você deve
considerar essa coluna desnecessária e admitir que ela está desperdiçando
espaço no modelo de dados.
Dica
Para obter mais informações, confira Técnicas de redução de dados para a
modelagem de importação.
Metadados
Metadados são informações sobre outros dados. Os metadados do Power
BI contêm informações sobre o modelo de dados, como o nome, o tipo de
dados e o formato de cada uma das colunas, o esquema do banco de dados, o
design do relatório, quando o arquivo foi modificado pela última vez, as taxas
de atualização de dados e muito mais.
Para ter uma visão geral e uma introdução geral do recurso de Data/hora
automática, confira Aplicar a data/hora automática no Power BI Desktop.
Usar Variáveis para Aprimorar o
Desempenho e Solucionar Problemas
Você pode usar variáveis em suas fórmulas DAX para escrever cálculos
menos complexos e mais eficientes. As variáveis são subutilizadas pelos
desenvolvedores que estão começando no Power BI Desktop, mas são
eficazes e você deve usá-las por padrão ao criar medidas.
Desempenho aprimorado
Legibilidade aprimorada
Depuração simplificada
Complexidade reduzida
Observe que a fórmula repete a expressão que calcula "o mesmo período no
ano passado", mas de duas maneiras diferentes:
A primeira instância usa o método normal de cálculo do DAX e a segunda usa
variáveis no cálculo.
A segunda linha da tabela mostra a definição de medida aprimorada. Essa
definição usa a palavra-chave VAR para introduzir uma variável
chamada SalesPriorYear e usa uma expressão para atribuir o resultado do
"mesmo período do ano passado" a essa nova variável. Em seguida, ela usa a
variável duas vezes na expressão RETURN.
Sem variável
Com variável
Ao usar variáveis, é uma melhor prática usar nomes descritivos para elas. No
exemplo anterior, a variável se chama SalesPriorYear, que indica claramente
o que ela está calculando.
Quando você importa várias tabelas, é possível que faça algumas análises
usando dados de todas essas tabelas.
Quando cria ou edita uma relação, você pode configurar opções adicionais.
Por padrão, o Power BI Desktop configura automaticamente opções
adicionais com base em sua melhor estimativa, que pode ser diferente para
cada relação com base nos dados nas colunas.
Ela significa que a coluna em uma tabela pode ter mais de uma instância de
um valor e a outra tabela relacionada, geralmente conhecida como tabela de
pesquisa, tem apenas uma instância de um valor.
Durante o desenvolvimento, você criará e editará relações em seu modelo,
portanto, quando estiver criando relações no modelo, independentemente
da cardinalidade escolhida, sempre verifique se ambas as colunas que você
está usando para participar de uma relação compartilham o mesmo tipo de
dados.
Seu modelo nunca funcionará se você tentar criar uma relação entre duas
colunas em que uma coluna tem um tipo de dados de texto e a outra tem
um tipo de dados Integer.
No exemplo a seguir, o campo ProductID tem o tipo de dados Número
inteiro nas tabelas de Produto e Vendas. As colunas com o tipo de
dados Inteiro têm melhor desempenho do que as colunas com o tipo de
dados Texto.
Por esse motivo, é importante se esforçar para minimizar os dados que serão
carregados nos modelos. Esse caso é especialmente verdadeiro para modelos
grandes ou para modelos que você imagina que crescerão e ficarão grandes
com o passar do tempo.
Considere, então, que uma redução de dados ainda mais significativa poderia
ser obtida agrupando por data no nível do mês.
Poderia ser alcançada uma redução de 99% no tamanho do modelo, mas o
relatório no nível do dia ou no nível do pedido individual deixaria de ser
possível.
A decisão de resumir dados de tipo de fatos sempre envolverá uma
compensação com relação ao detalhamento dos dados. Uma desvantagem é
que você pode perder a capacidade de analisar os dados com mais
profundidade porque os detalhes não existem mais. Essa compensação pode
ser atenuada usando um design de modelo misto.
Por exemplo, os dados de vendas resumidos poderiam ser usados para obter
relatórios de "resumo" de alto desempenho.
Uma página de detalhamento poderia ser criada para exibir as vendas
granulares para um contexto de filtro específico (e restrito), exibindo todos
os pedidos de venda no contexto.
A página de detalhamento incluiria visuais baseados em uma tabela
do DirectQuery para recuperar os dados dos pedidos de vendas (detalhes dos
pedidos de vendas).
Dica
Para obter mais informações, confira Técnicas de redução de dados para a
modelagem de importação.
Dica
Para obter informações mais detalhadas, confira Diretrizes de modelo
do DirectQuery no Power BI Desktop.
Selecione os itens abaixo para acessar os conteúdos sobre as implicações do
uso, comportamento e limitações das conexões do DirectQuery:
Implicações do uso do DirectQuery
É uma melhor prática importar dados para o Power BI Desktop, mas sua
organização talvez precise usar o modo de conectividade de dados
do DirectQuery por um dos seguintes motivos (benefícios do DirectQuery):
o É adequado em casos em que os dados mudam com frequência e
relatórios quase em tempo real são necessários.
o Pode lidar com um grande volume de dados sem a necessidade de
agregar previamente.
o Aplica restrições de soberania de dados para atender a requisitos legais.
o Pode ser usado com uma fonte de dados multidimensional que contém
medidas como o SAP BW (Business Warehouse).
Se a organização precisar usar o DirectQuery, você deverá entender
claramente seu comportamento no Power BI Desktop e estar ciente das
limitações dele. Em seguida, você estará em boas condições para otimizar o
modelo do DirectQuery o máximo possível.
Comportamento das conexões do DirectQuery
Quando você usa o DirectQuery para se conectar a dados no Power BI
Desktop, essa conexão se comporta da seguinte maneira:
Otimizar o desempenho
Continuando com o cenário da Tailwind Traders, durante a revisão do
modelo de dados, você descobre que a consulta usava o
DirectQuery para conectar o Power BI Desktop aos dados de origem.
Esse uso do DirectQuery é o motivo pelo qual os usuários estão lidando com
um relatório com desempenho insatisfatório. Está levando muito tempo
para carregar as páginas do relatório e as tabelas não são atualizadas com
rapidez suficiente quando determinadas seleções são feitas. Você precisa
tomar medidas para otimizar o desempenho do modelo do DirectQuery.
Você pode examinar as consultas enviadas para a origem subjacente e tentar
identificar o motivo do mau desempenho de consulta. Em seguida, você
pode fazer alterações no Power BI Desktop e na fonte de dados
subjacente para otimizar o desempenho geral.
Otimizar dados no Power BI Desktop
Depois de ter otimizado a fonte de dados o máximo possível, você pode
atuar mais dentro do Power BI Desktop usando o Performance Analyzer, no
qual pode isolar as consultas para validar os planos de consulta.
Dica
Para obter diretrizes mais detalhadas sobre como otimizar uma consulta
do DirectQuery, confira: Diretrizes de modelo do DirectQuery no Power BI
Desktop e Diretrizes para usar o DirectQuery com êxito.
Otimizar a fonte de dados subjacente (banco de dados conectado)
Sua primeira parada é a fonte de dados. Você precisa ajustar o banco de
dados de origem o máximo possível, pois tudo o que você fizer
para aprimorar o desempenho desse banco de dados de origem aprimorará
o DirectQuery do Power BI. As ações executadas no banco de dados trarão
os maiores benefícios.
Considere o uso das seguintes práticas de banco de dados padrão que se
aplicam à maioria das situações:
1. Se você estiver lidando com uma grande quantidade de dados (Big Data), as
agregações proporcionarão um melhor desempenho de consulta e ajudarão
você a analisar e revelar insights sobre esses dados de grande escala. Os dados
agregados são armazenados em cache e, portanto, usam uma fração dos
recursos consumidos por dados detalhados.
2. Se você estiver lidando com uma atualização lenta, as agregações ajudarão a
acelerar o processo de atualização. O tamanho menor do cache reduz o tempo
de atualização, de modo que os dados chegam aos usuários mais rapidamente.
Em vez de atualizar o que poderiam ser milhões de linhas, você atualizaria
uma quantidade menor de dados.
3. Se você tiver um modelo de dados grande, as agregações poderão ajudar a
reduzir e manter o tamanho do modelo.
4. Se acreditar que o modelo de dados crescerá no futuro, você poderá usar as
agregações como uma etapa proativa para proteção futura de seu modelo de
dados, diminuindo o potencial de ocorrerem problemas de desempenho e de
atualização, bem como problemas gerais de consulta.
Continuando com o cenário da Tailwind Traders, você adotou várias etapas
para otimizar o desempenho do modelo de dados, mas a equipe de TI
informou que o tamanho do arquivo ainda é muito grande. No momento, o
arquivo tem 1 GB (gigabyte) e você precisa reduzi-lo para cerca de 50 MB
(megabytes).
Durante a revisão de desempenho, você identificou que o desenvolvedor
anterior não usou agregações no modelo de dados, portanto, agora você
quer criar algumas agregações para os dados de vendas a fim de reduzir o
tamanho do arquivo e otimizar ainda mais o desempenho.
Criar Agregações
Antes de começar a criar as agregações, você precisa decidir sobre
a granularidade (nível) com que deseja criá-las.
Você pode criar agregações de maneiras diferentes, e cada método levará aos
mesmos resultados, por exemplo: