O modelo de dados é a fundação de qualquer relatório Power BI. Um modelo correto torna as medidas DAX simples e os relatórios precisos. Um modelo errado produz números incorretos mesmo com fórmulas aparentemente certas.
O que é um relacionamento
Um relacionamento conecta duas tabelas por uma coluna em comum — geralmente um campo chave (ID do cliente, código do produto, data). Quando o usuário filtra por cliente no relatório, o Power BI usa os relacionamentos para saber quais vendas pertencem aquele cliente.
Criando relacionamentos
Na visão Modelo, arraste uma coluna de uma tabela até a coluna correspondente de outra. O Power BI cria uma linha de relacionamento entre as tabelas. O número "1" indica o lado único (tabela de dimensão) e o asterisco "*" indica o lado múltiplo (tabela de fato).
Alternativamente: Modelagem → Gerenciar Relacionamentos → Novo — interface visual com mais opções.
Cardinalidade
- Um para muitos (1:*): o mais comum e recomendado. Um cliente pode ter muitos pedidos. A tabela de clientes tem um ID único; a tabela de pedidos tem o ID do cliente repetido.
- Muitos para muitos (*:*): mais complexo. Use com cuidado — geralmente indica que está faltando uma tabela de ponte no modelo.
- Um para um (1:1): raro. Geralmente indica que as tabelas deveriam ser mescladas.
Direção do filtro cruzado
- Único: filtros fluem da tabela "1" para a tabela "*". O padrão e o mais seguro.
- Bidirecional: filtros fluem nos dois sentidos. Pode causar resultados ambíguos em modelos complexos — use somente quando necessário e com entendimento do impacto.
Por que o modelo estrela é o padrão recomendado
O modelo estrela tem uma tabela de fatos central (transações, vendas, eventos) cercada de tabelas de dimensão (clientes, produtos, datas, regiões). Todos os relacionamentos são 1:* do centro para fora. Vantagens:
- Desempenho superior — o motor DAX é otimizado para esse padrão
- DAX mais simples — não há filtros cruzados inesperados
- Mais fácil de manter e expandir
Perguntas frequentes
O Power BI cria relacionamentos automaticamente?
Sim, se as colunas tiverem o mesmo nome. Mas verifique sempre — a detecção automática pode criar relacionamentos incorretos ou indesejados. Revise na visão Modelo após importar.
Posso ter mais de um relacionamento entre duas tabelas?
Sim, mas apenas um pode estar ativo por vez. O relacionamento ativo é a linha sólida; os inativos são linhas tracejadas. Para usar um relacionamento inativo em uma medida DAX, use a função USERELATIONSHIP() dentro do CALCULATE.