Definir a granularidade de dados

Concluído

A granularidade de dados é o nível de detalhe que é representado nos dados, o que significa que quanto mais granularidade os dados tiverem, maior será o nível de detalhe nos dados.

A granularidade de dados é um tópico importante para todos os analistas de dados, independentemente das ferramentas do Power BI que você está usando. A definição correta da granularidade de dados pode ter um grande impacto sobre o desempenho e a usabilidade de seus relatórios e visuais do Power BI.

Granularidade de dados definida

Considere um cenário em que sua empresa gerencia 1.000 caminhões semirreboque refrigerados. A cada poucos minutos, cada caminhão registra a temperatura atual em seu interior usando um aplicativo Microsoft Azure IoT. Essa temperatura é importante para sua organização porque, se a refrigeração tivesse algum problema de mau funcionamento, poderia estragar toda a carga, custando milhares de dólares. Com tantos caminhões e tantos sensores, um volume extenso de dados é gerado todos os dias. Os usuários dos seus relatórios não desejam ter que buscar em meio a um número grande de registros para encontrar aqueles em que eles estão particularmente interessados.

O que você pode fazer para alterar a granularidade dos dados e tornar o modelo semântico mais utilizável?

Nesse cenário, talvez você queira importar os dados usando uma média diária para cada caminhão. Essa abordagem reduziria os registros no banco de dados para um registro por caminhão por dia. Se você decidir que a abordagem é aceitável o suficiente para controlar os custos e os erros, use essa granularidade de dados. Como alternativa, selecione a última temperatura registrada ou importe apenas os registros que estejam acima ou abaixo de um intervalo normal de temperaturas. Qualquer um desses métodos reduzirá o total de registros importados e, ao mesmo tempo, disponibilizará dados abrangentes e valiosos.

Para cenários diferentes, você pode manter uma granularidade de dados definida a cada semana, mês ou ano. Geralmente, quanto menor o número de registros com os quais você estiver trabalhando, mais rapidamente os relatórios e visuais funcionarão. Essa abordagem se traduz em uma taxa de atualização mais rápida para todo o modelo semântico, o que poderia significar que você será capaz de atualizar com mais frequência.

No entanto, essa abordagem tem uma desvantagem. Se os usuários desejarem analisar cada uma das transações, o ato de resumir a granularidade impedirá que eles façam isso, o que pode ter um impacto negativo sobre a experiência do usuário. É importante negociar o nível de granularidade de dados com os usuários de relatório para que eles compreendam as implicações dessas escolhas.

Alterar a granularidade de dados para criar uma relação entre duas tabelas

A granularidade de dados também pode ter um impacto quando você está criando relações entre tabelas no Power BI.

Por exemplo, considere que você está criando relatórios para a equipe de vendas na Tailwind Traders. Foi solicitado que você criasse uma matriz do total de vendas e do orçamento total ao longo do tempo usando as tabelas Calendar, Sales e Budget. Observe que o nível mais baixo de detalhes baseados em tempo disponíveis na tabela Sales é por dia, por exemplo, 5/1/2020, 6/7/2020 e 6/18/2020. A tabela de orçamento só vai até o nível mensal, por exemplo, os dados de orçamento são de 5/2020 e de 6/2020. Essas tabelas têm granularidades diferentes que precisam ser reconciliadas para que você possa criar uma relação entre elas.

A figura a seguir mostra seu modelo semântico atual.

Conforme mostrado na figura anterior, uma relação entre Budget e Calendar está ausente. Portanto, você precisa criar essa relação antes de criar seu visual. Se você transformar as colunas Year e Month na tabela Calendar em uma nova coluna e fazer a mesma transformação na tabela de Budget, poderá combinar o formato da coluna Date na tabela Calendar. Em seguida, você pode estabelecer uma relação entre as duas colunas. Para concluir essa tarefa, você concatenará as colunas Year e Month e, em seguida, alterará o formato.

Selecione Transformar Dados na faixa de opções. Em Etapas Aplicadas, no painel direito, clique com o botão direito do mouse na última etapa e, em seguida, selecione Inserir Próxima Etapa.

Em Adicionar Coluna, na faixa de opções Página Inicial, selecione Coluna Personalizada. Insira a equação a seguir, que concatenará as colunas Year e Month e, em seguida, adicione um traço entre os nomes das colunas.

Column = Table.AddColumn(#"Renamed Columns", "Custom", each [Year] & "-" &[Month])

Altere o tipo de dados para Data e renomeie a coluna. Sua tabela Budget deve ser semelhante à da figura a seguir.

Agora, é possível criar uma relação entre as tabelas Budget e Calendar.

Criar uma relação entre tabelas

O Power BI detecta relações automaticamente, mas também é possível acessar Gerenciar Relações > Novo e criar a relação na coluna Data. A relação deve ser semelhante à da figura a seguir.

Ao concluir essa tarefa, você garante que a granularidade seja a mesma entre as várias tabelas. Agora, você precisa criar medidas DAX para calcular Total Sales e BudgetAmount. Acesse o painel Dados no Power BI Desktop, selecione Nova Medida e, em seguida, crie duas medidas com as seguintes equações:

TotalSales = SUM(Sales[Total Sales])
BudgetAmount = SUM (Budget[BudgetAmount])

Selecione o visual de tabela no painel Visualização, depois insira essas medidas e a Data no campo Valores. Agora você atingiu a meta de criar uma matriz do total de vendas e orçamentos ao longo do tempo.