Modelagem de Dados e Relacionamentos
Guia completo para instrutor iniciante - Criando modelos de dados eficientes
Cronograma da Aula (120 minutos)
0-15 min
Revisão e Conceitos
15-45 min
Tipos de Relacionamentos
45-75 min
Criando Relacionamentos
75-105 min
Schemas e Boas Práticas
105-120 min
Exercícios Práticos
IMPORTANTE: Preparação Antes da Aula
Prepare múltiplas tabelas relacionadas:
Crie 'vendas.xlsx', 'produtos.xlsx', 'clientes.xlsx' e 'categorias.xlsx' com chaves primárias e estrangeiras
Teste a criação de relacionamentos:
Pratique criar relacionamentos no Model View, configurar cardinalidade e direção de filtro
Prepare exemplos visuais:
Tenha diagramas simples de Star Schema e Snowflake Schema para mostrar aos alunos
Script de Introdução (0-15 min)
Fale exatamente assim:
"Bom dia, pessoal! Na aula passada aprendemos a limpar e transformar dados. Quem lembra qual foi a transformação mais útil que vocês viram?"
(Aguarde respostas e reforce conceitos como remover duplicatas, limpar texto, alterar tipos)
"Perfeito! Agora imaginem que vocês têm dados limpos, mas estão em tabelas separadas. Como vocês fariam para analisar vendas por categoria de produto se os dados estão em arquivos diferentes?"
"Exato! Precisamos conectar essas tabelas. É como montar um quebra-cabeças - cada tabela é uma peça, e os relacionamentos são as conexões entre elas."
"Hoje vocês vão aprender a ser 'arquitetos de dados'. Vamos construir modelos que conectam informações de forma inteligente e eficiente!"
"No final da aula, vocês saberão criar relacionamentos que farão seus relatórios funcionarem como mágica!"
Conceitos Fundamentais (15-30 min)
O que é Modelagem de Dados? (5 min)
Explique com analogia: "Imaginem que vocês têm várias gavetas com documentos. A modelagem é como organizar e etiquetar essas gavetas para encontrar tudo rapidamente."
Definição técnica: "É o processo de estruturar e conectar dados de diferentes fontes para criar um modelo coerente e eficiente."
💡 Use exemplos do dia a dia: "Como um catálogo de biblioteca conecta livros, autores e categorias"
Chaves Primárias e Estrangeiras (10 min)
Chave Primária: "É como o RG de uma pessoa - único e identifica cada registro."
Exemplo prático: "Na tabela Produtos, o 'ID_Produto' é a chave primária. Cada produto tem um número único."
Chave Estrangeira: "É como uma referência - aponta para a chave primária de outra tabela."
Exemplo: "Na tabela Vendas, 'ID_Produto' é chave estrangeira que aponta para Produtos."
⚠️ Importante: Sempre mostre exemplos visuais com dados reais
Tipos de Relacionamentos (30-45 min)
1. Um para Um (1:1) - 5 min
Explicação simples: "Como uma pessoa e seu CPF - cada pessoa tem um CPF único."
Exemplo no Power BI: "Tabela Funcionários e tabela Detalhes_Pessoais"
Quando usar: "Quando você quer separar informações por segurança ou organização"
💡 Dica: Relacionamentos 1:1 são raros no Power BI
2. Um para Muitos (1:N) - MAIS COMUM - 15 min
Analogia: "Como uma mãe e seus filhos - uma mãe pode ter vários filhos, mas cada filho tem uma mãe."
Exemplo prático: "Um cliente pode fazer várias compras, mas cada compra pertence a um cliente."
No Power BI:
- Tabela Clientes (1) → Tabela Vendas (Muitos)
- Tabela Produtos (1) → Tabela Vendas (Muitos)
- Tabela Categorias (1) → Tabela Produtos (Muitos)
⭐ Este é o tipo mais usado em 90% dos casos!
3. Muitos para Muitos (N:N) - 10 min
Exemplo: "Estudantes e disciplinas - um estudante cursa várias disciplinas, uma disciplina tem vários estudantes."
No Power BI: "Produtos e Fornecedores - um produto pode ter vários fornecedores, um fornecedor vende vários produtos."
Solução: "Criamos uma tabela intermediária (ponte) para quebrar em dois relacionamentos 1:N"
⚠️ Cuidado: Pode causar problemas de performance se mal implementado
Criando Relacionamentos na Prática (45-75 min)
Demonstração 1: Acessando o Model View (5 min)
Instruções passo a passo:
- "Abram o Power BI Desktop"
- "Carreguem as tabelas: Vendas, Produtos, Clientes"
- "Cliquem no ícone 'Model' na barra lateral esquerda (parece um diagrama)"
- "Vejam que aparecem as tabelas como caixas na tela"
- "Observem que talvez já existam algumas linhas conectando as tabelas"
💡 O Power BI às vezes cria relacionamentos automaticamente se detectar nomes similares
Demonstração 2: Criando Relacionamento Manual (10 min)
Cenário: "Vamos conectar Vendas com Produtos"
Passo a passo:
- "Identifiquem a coluna 'ID_Produto' na tabela Vendas"
- "Cliquem e arrastem dessa coluna até 'ID_Produto' na tabela Produtos"
- "Aparecerá uma linha conectando as tabelas"
- "Cliquem duas vezes na linha para ver as propriedades"
- "Vejam que mostra: Produtos(ID_Produto) → Vendas(ID_Produto) com cardinalidade 1:*"
⚠️ Sempre verifique se a cardinalidade está correta!
Demonstração 3: Configurando Propriedades (15 min)
Propriedades importantes:
Cardinalidade:
- "Um para muitos (1:*)" - mais comum
- "Muitos para um (*:1)" - direção inversa
- "Muitos para muitos (*:*)" - evitar quando possível
Direção do filtro cruzado:
- "Única" - filtro vai só em uma direção
- "Ambas" - filtro vai nas duas direções (cuidado!)
Relacionamento ativo:
- "Ativo" - usado automaticamente em cálculos
- "Inativo" - precisa ser chamado explicitamente
💡 Regra de ouro: Mantenha simples - direção única e relacionamentos ativos
Schemas e Boas Práticas (75-105 min)
Star Schema - O Mais Recomendado (15 min)
Analogia: "Como uma estrela - uma tabela central (fatos) conectada a várias tabelas ao redor (dimensões)."
Estrutura:
- Tabela Fato (centro): Vendas com métricas (valor, quantidade)
- Tabelas Dimensão (pontas): Produtos, Clientes, Tempo, Lojas
Vantagens:
- "Simples de entender"
- "Rápido para consultas"
- "Fácil de manter"
⭐ Use Star Schema sempre que possível!
Snowflake Schema (10 min)
Conceito: "Como um floco de neve - as dimensões são normalizadas (quebradas em sub-tabelas)."
Exemplo:
- "Produtos → Subcategorias → Categorias"
- "Clientes → Cidades → Estados → Países"
Quando usar: "Quando você tem muitos dados repetidos e quer economizar espaço"
Desvantagem: "Mais complexo e pode ser mais lento"
⚠️ Para iniciantes, prefira Star Schema
Boas Práticas de Modelagem (5 min)
- Nomeação: "Use nomes claros e consistentes"
- Chaves: "Sempre tenha chaves primárias únicas"
- Relacionamentos: "Prefira 1:N, evite N:N"
- Direção: "Use filtro cruzado único"
- Performance: "Menos tabelas = melhor performance"
- Documentação: "Documente seu modelo"
💡 Lembre-se: Simples é melhor!
Exercício Prático - Loja de Roupas (105-115 min)
Cenário: Sistema de Vendas de Loja
Instruções para os alunos:
"Vocês são analistas de uma loja de roupas. Receberam 4 planilhas:"
- Vendas: ID_Venda, Data, ID_Produto, ID_Cliente, Quantidade, Valor
- Produtos: ID_Produto, Nome, ID_Categoria, Preço, Marca
- Clientes: ID_Cliente, Nome, Cidade, Estado
- Categorias: ID_Categoria, Nome_Categoria, Tipo
Tarefa: "Criem um modelo Star Schema conectando todas as tabelas"
Passos:
- "Carreguem as 4 tabelas no Power BI"
- "Vão para o Model View"
- "Identifiquem qual é a tabela fato (Vendas)"
- "Criem relacionamentos: Vendas → Produtos, Vendas → Clientes"
- "Criem relacionamento: Produtos → Categorias"
- "Verifiquem se todas as cardinalidades estão corretas"
- "Testem criando um visual simples"
Problemas Comuns e Soluções
❌ "Não consigo criar o relacionamento"
Possíveis causas:
- Tipos de dados diferentes (texto vs número)
- Valores duplicados na chave primária
- Valores nulos nas chaves
Solução: "Verifiquem os tipos de dados e valores únicos"
⚠️ "Os valores não batem nos visuais"
Causa comum: Relacionamento com cardinalidade errada
Solução: "Verifiquem se a cardinalidade está 1:* (não *:*)"
💡 "Relacionamento inativo"
Explicação: "Linha pontilhada = inativo, linha sólida = ativo"
Quando acontece: "Quando há múltiplos caminhos entre tabelas"
Solução: "Usem USERELATIONSHIP() em DAX quando necessário"
Perguntas Frequentes
P: "Posso ter mais de um relacionamento entre duas tabelas?"
R: "Sim, mas apenas um pode estar ativo. Os outros ficam inativos (linha pontilhada)."
P: "Quando usar direção de filtro 'Ambas'?"
R: "Raramente. Pode causar ambiguidade. Use apenas quando realmente necessário."
P: "Quantas tabelas posso ter no modelo?"
R: "Não há limite fixo, mas modelos simples (5-10 tabelas) são mais fáceis de manter."
P: "Posso mudar relacionamentos depois de criar visuais?"
R: "Sim, mas pode afetar os visuais existentes. Sempre teste após mudanças."
Dicas Importantes para o Instrutor
Use analogias do mundo real: Família (pai-filhos), biblioteca (livros-autores), loja (produtos-vendas)
Mostre sempre visualmente: Desenhe no quadro ou use diagramas simples antes de ir para o Power BI
Comece simples: Duas tabelas primeiro, depois adicione complexidade gradualmente
Verifique sempre: Após criar relacionamentos, teste com um visual simples para confirmar
Erros são normais: Encoraje os alunos a experimentar e não ter medo de "quebrar" o modelo
Script de Encerramento (115-120 min)
Fale exatamente assim:
"Parabéns, pessoal! Vocês acabaram de aprender uma das partes mais importantes do Power BI: a modelagem de dados!"
"Agora vocês sabem conectar tabelas como verdadeiros arquitetos de dados. Lembrem-se: relacionamentos bem feitos são a base de relatórios eficientes."
"Na próxima aula, vamos aprender sobre medidas e cálculos DAX. Vocês vão ver como esses relacionamentos que criaram hoje vão fazer toda a diferença!"
"Dica de casa: tentem aplicar o que aprenderam com dados da empresa de vocês. Identifiquem as tabelas e pensem em como conectá-las."
"Alguma dúvida sobre relacionamentos antes de encerrarmos?"