Módulo 13: Performance e boas práticas

Aula 2 de 3

Reduzindo o tamanho do modelo

Cardinalidade, colunas desnecessárias, tipos de dado e agregações.

19 minutos de leitura


O VertiPaq comprime por coluna. O que determina o tamanho não é o número de linhas, e sim a cardinalidade: quantos valores distintos a coluna tem.

AçãoGanho típicoCusto
Remover colunas não usadas20% a 60%Nenhum, se realmente não são usadas
Separar data e hora em duas colunasAlto em fatos grandesPerde o carimbo exato combinado
Remover colunas de ID textual longoAltoPrecisa manter uma chave numérica
Trocar decimal por moeda (4 casas fixas)MédioArredondamento em 4 casas
Resumir a fato na granularidade necessáriaMuito altoPerde o detalhe linha a linha
Desativar 'Data/hora automática'MédioExige tabela calendário própria (que você já deve ter)
Linguagem MSeparando data e hora no Power Query
let    Origem = Sql.Database("servidor", "vendas"),    Fato = Origem{[Schema="dbo", Item="fVendas"]}[Data],    ComData = Table.AddColumn(Fato, "Data", each DateTime.Date([DataHora]), type date),    ComHora = Table.AddColumn(ComData, "Hora",        each Time.From(Text.Combine({            Text.PadStart(Text.From(Time.Hour([DataHora])), 2, "0"), ":",            Text.PadStart(Text.From(Time.Minute([DataHora])), 2, "0"), ":00"        })), type time),    SemOriginal = Table.RemoveColumns(ComHora, {"DataHora"})in    SemOriginal

Desativar a data/hora automática

  1. 1Arquivo → Opções → Configurações atuais do arquivo → Inteligência de dados.
  2. 2Desmarque 'Data/hora automática'.
  3. 3Faça o mesmo em Configurações globais para novos arquivos.
  4. 4Motivo: o Power BI cria uma tabela de calendário oculta para CADA coluna de data do modelo.

Agregações

Em modelos muito grandes, crie uma tabela agregada (por exemplo, por dia + produto) em modo Importação sobre uma fato detalhada em DirectQuery. O Power BI usa a agregação quando ela responde à consulta e só desce ao detalhe quando precisa.

  1. 1Crie a tabela agregada na fonte ou no Power Query, com as chaves das dimensões.
  2. 2Relacione-a às mesmas dimensões da fato detalhada.
  3. 3Clique com o botão direito na tabela → Gerenciar agregações.
  4. 4Mapeie cada coluna: Contagem, Soma, Mín, Máx, Agrupar por.
  5. 5Oculte a tabela agregada — o usuário nunca deve vê-la.

Exercício prático

Analise seu modelo com o VertiPaq Analyzer, liste as 5 maiores colunas e elimine ou reduza pelo menos três. Registre o tamanho do arquivo antes e depois.