Partilhar via


Diretrizes de design para tabelas de data no Power BI Desktop

Este artigo descreve boas práticas de design para criar tabelas de data em seus modelos de dados ao usar o Power BI Desktop.

Uma tabela de data é a tabela mais comum usada para análise. Ele armazena uma linha por data e suporta o requisito comum de filtrar ou agrupar por períodos específicos de datas, como anos, trimestres ou meses.

Além disso, para trabalhar com funções de inteligência de tempo DAX (Data Analysis Expressions), seu modelo de dados deve ter pelo menos uma tabela de data. Uma tabela de data é uma tabela modelo que atende aos seguintes requisitos:

  • Ele deve ter uma coluna de data (ou data/hora) do tipo de dados, conhecida como coluna de data.
  • A coluna de data deve conter valores exclusivos.
  • A coluna de data não deve conter BLANKs.
  • A coluna de data não deve ter datas ausentes.
  • A coluna de data deve abranger anos completos. Um ano não é necessariamente um ano civil (janeiro-dezembro).
  • A tabela de datas deve ser marcada como uma tabela de datas.

Você pode usar qualquer uma das várias técnicas para adicionar uma tabela de data ao seu modelo:

Gorjeta

Uma tabela de datas é talvez o recurso mais consistente que você adicionará a qualquer um dos seus modelos de dados. Dentro de uma organização, uma tabela de datas deve ser definida de forma consistente. Portanto, seja qual for a técnica que você decidir usar, recomendamos que você crie um modelo do Power BI Desktop que inclua uma tabela de data totalmente configurada. Compartilhe o modelo com todos os modeladores de dados em sua organização. Assim, sempre que alguém desenvolve um novo modelo de dados, pode começar com uma tabela de datas definida de forma consistente.

Usar data/hora automática

A opção Auto date/time oferece inteligência de tempo conveniente, rápida e fácil de usar. Os autores de relatórios podem trabalhar com inteligência de tempo ao filtrar, agrupar e detalhar períodos de tempo do calendário.

Recomendamos que mantenha a opção Data/hora automática ativada apenas quando trabalhar com períodos de tempo do calendário e quando tiver requisitos de modelo simplistas em relação à hora. Você também pode usar essa opção ao criar modelos ad hoc ou ao executar a exploração de dados ou a criação de perfis. Essa abordagem, no entanto, não oferece suporte a um único design de tabela de data que possa propagar filtros para várias tabelas. Para obter mais informações, consulte Orientação automática de data/hora no Power BI Desktop.

Ligar ao Power Query

Quando sua fonte de dados já tiver uma tabela de data, recomendamos que você a use como a fonte da tabela de data do modelo. Normalmente, é o caso quando você está se conectando a um data warehouse, pois ele já deve ter uma tabela de dimensão de data. Dessa forma, seu modelo usa uma única fonte de verdade para o tempo em sua organização.

Se você estiver desenvolvendo um modelo DirectQuery e sua fonte de dados não incluir uma tabela de data, é altamente recomendável adicionar uma tabela de data à fonte de dados. Ele deve atender a todos os requisitos de modelagem de uma tabela de data. Em seguida, pode utilizar o Power Query para ligar à tabela de datas. Dessa forma, seus cálculos de modelo podem usar os recursos de inteligência de tempo do DAX.

Gerar com o Power Query

Pode gerar uma tabela de datas utilizando o Power Query. Para obter mais informações, consulte a entrada de blogue de Chris Webb Gerar uma tabela de dimensão de data no Power Query.

Gorjeta

Se não tiver um armazém de dados ou outra definição consistente de tempo na sua organização, considere utilizar o Power Query para publicar um fluxo de dados. Em seguida, faça com que todos os modeladores de dados se conectem ao fluxo de dados para adicionar tabelas de data aos seus modelos. O fluxo de dados torna-se a única fonte de verdade para o tempo em sua organização.

Se você precisar gerar uma tabela de datas, considere fazê-lo com o DAX. Você pode achar que é mais fácil. Além disso, é provável que seja mais conveniente, porque o DAX inclui alguma inteligência integrada para simplificar a criação e o gerenciamento de tabelas de data.

Gerar com DAX

Você pode gerar uma tabela de data em seu modelo criando uma tabela calculada usando a função CALENDAR ou CALENDARAUTO DAX. Cada função retorna uma tabela de datas de coluna única. Em seguida, você pode estender a tabela calculada com colunas calculadas para dar suporte aos seus requisitos de filtragem e agrupamento de intervalo de data.

  • Use a CALENDAR função quando quiser definir um intervalo de datas. Você passa em dois valores: a data de início e a data de término. Esses valores podem ser definidos por outras funções DAX, como MIN(Sales[OrderDate]) ou MAX(Sales[OrderDate]).
  • Use a CALENDARAUTO função quando quiser que o intervalo de datas abranja automaticamente todas as datas armazenadas no modelo. Você pode passar em um único parâmetro opcional que é o mês final do ano (se o seu ano é um ano civil, que termina em dezembro, você não precisa passar em um valor). É uma função útil porque garante que anos completos de datas sejam devolvidos e, portanto, atenda ao requisito de uma tabela de datas marcada. Além disso, você não precisa estender a tabela com linhas para anos futuros. Isso porque quando uma atualização de dados é concluída, ela aciona o recálculo da tabela. Um novo cálculo estende automaticamente o intervalo de datas da tabela quando as datas de um novo ano são carregadas no modelo.

Gorjeta

Para obter mais informações sobre como criar tabelas calculadas, incluindo um exemplo de como criar uma tabela de data, trabalhe no módulo de aprendizagem Adicionar tabelas e colunas calculadas aos modelos do Power BI Desktop.

Além disso, considere usar uma ferramenta gratuita de código aberto para ajudar a gerenciar datas com o DAX. Para obter mais informações, consulte Bravo para Power BI.

Clone com DAX

Quando seu modelo de dados já tem uma tabela de data e você precisa de outra tabela de data, quando data é uma dimensão de interpretação de função, você pode facilmente clonar a tabela de data existente. Você pode clonar uma tabela criando uma tabela calculada. A expressão da tabela calculada é simplesmente o nome da tabela de data existente.

Por exemplo, para criar uma Ship Date tabela que clona a Date tabela, use a seguinte expressão de tabela calculada.

Ship Date = 'Date'

Nota

Quando você clona uma tabela com DAX, ela cria apenas colunas. Ele não aplica nenhuma propriedade de modelo da tabela clonada, como formatos ou descrições. Além disso, as hierarquias não são clonadas.

Para obter mais informações relacionadas a este artigo, confira os seguintes recursos: