Quando usar um modelo de relação de vários fatos
Um modelo de relação de vários fatos é um modelo de dados que permite adicionar tabelas não relacionadas em uma única fonte de dados e, em seguida, usar campos relacionados durante a análise visual para essencialmente unir as tabelas com base no contexto. Ao contrário da combinação, os dados existem em uma única fonte de dados — os conceitos de fontes de dados primárias e secundárias não se aplicam e nenhum dado é eliminado das uniões de coluna à esquerda. Ao contrário de um modelo de dados de tabela única, várias tabelas base mantêm seu próprio contexto em relação às tabelas compartilhadas entre eles. Um modelo de dados de relação de vários fatos oferece mais opções para realizar análises de vários fatos no Tableau.
Imagine que você deseja analisar a tendência do clima e das vendas de sorvetes juntos. As vendas de sorvete e clima acontecem em horários e locais específicos, mas não há conexão direta entre as vendas de sorvete e o clima. Esses são dados não relacionados que se relacionam aos conceitos compartilhados de data e local.
Esta questão se presta à criação de um modelo de relação de vários fatos. Vendas de sorvete e clima podem ser adicionados como uma tabela base e relacionados em data e local, que são tabelas compartilhadas.
Por que construímos a capacidade de modelar tabelas não relacionadas?
A análise geralmente envolve reunir tabelas de dados que nem sequer têm uma relação direta entre si, mas que se relacionam com as mesmas informações comuns (como data ou local). Um modelo de relação de vários fatos oferece suporte ao acoplamento semântico flexível, introduzindo o conceito de graus de relação e a capacidade de construir um modelo de dados com múltiplas tabelas base não relacionadas.
Acoplamento semântico é um termo usado para descrever o quão estreitamente combinados os dados são. Uma união de coluna ou união de lonha é um acoplamento semântico rígido; eles reúnem várias tabelas em uma nova tabela física que atua como uma única tabela. A relação é um acoplamento mais frouxo entre tabelas que une as tabelas logicamente, mantendo seu status distinto como tabelas separadas. Ainda mais adiante no espectro do acoplamento semântico está combinação de dados, onde os resultados de fontes de dados separadas são combinados visualmente com base em elementos compartilhados entre ambos. Um modelo de relação de vários fatos está mais próximo da extremidade combinada do espectro, mas dentro de uma única fonte de dados, em vez de entre fontes de dados.
Um modelo de relação de vários fatos — um modelo de dados com diversas tabelas base — permite tabelas não relacionadas no modelo, desde que também existam tabelas compartilhadas no modelo. Durante a análise, os campos de uma tabela compartilhada “unem” tabelas de dados que de outra forma não seriam relacionadas com base nas dimensões compartilhadas que elas têm em comum (como acontecer no mesmo local ou ao mesmo tempo). Todos os benefícios das relações são mantidos, incluindo a retenção da granulação de cada tabela, ou nível nativo de detalhe.
Semelhante a um modelo de dados de tabela base única, o Tableau determina o melhor tipo de junção a ser usado nos bastidores com base na estrutura da visualização. Mas em um modelo de relação de vários fatos, as opções de união de colunas são expandidas para incluir uniões de coluna externas e cruzadas para lidar com diferentes níveis de relação. Para mais informações, veja Sobre modelos de dados de relação de vários fatos.
Qual é a origem do nome?
As relações multifatoriais recebem esse nome devido à análise de vários fatos. Em um modelo de data warehouse, os dados são armazenados em uma tabela de fatos central cercada por tabelas de dimensões. Nesse contexto, fato refere-se a medidas ou métricas, que são campos numéricos de dados que capturam fatos sobre os dados – as medidas do Tableau. As tabelas de dimensões contêm atributos sobre esses fatos.
Os esquemas baseados em tabelas de fatos são frequentemente estruturados como uma estrela ou um floco de neve, dependendo de como as tabelas de dimensões são organizadas. Quando a análise precisa ser realizada em tabelas de fatos, isso é chamado de análise de vários fatos. A análise é feita no contexto das tabelas de dimensões comuns, conhecidas como dimensões compartilhadas ou dimensões conformadas. No Tableau, você cria esses modelos de dados usando relacionamentos, por isso chamamos esse conjunto de recursos de relacionamentos multifatores.
Quando usar modelos de dados de relações multifatoriais
Se seus dados consistirem em tabelas relacionadas entre si, você poderá usar fontes de dados de tabela base única criadas com relações. Um modelo de relação de vários fatos é necessário quando seus dados abrangem conceitos diferentes, seja na forma de múltiplas tabelas de fatos ou em diferentes contextos não relacionados.
Sempre que possível, construa suas fontes de dados com uma única tabela base. Em um modelo de dados de tabela base única, todas as tabelas estão relacionadas e não há necessidade de considerar graus de relação. Use relações multifatoriais apenas quando essa estrutura de modelo de dados for necessária.
Análise de vários fatos
A análise de vários fatos é um caso de uso central para relacionamentos multifatoriais no Tableau. Neste exemplo, o Fato A e o Fato B compartilham uma data da tabela.
Para modelar isso no Tableau, as tabelas de fatos tornam-se tabelas base e várias relações de entrada são estabelecidos para suas tabelas de dimensões compartilhadas.
Outros cenários
No entanto, os modelos de dados de relação de vários fatos não servem apenas para análise de vários fatos. O Tableau não exige uma definição estrita de tabelas de fatos ou dimensões. Qualquer tabela pode ser uma tabela base (embora deva se adequar ao características das tabelas base). Alguns cenários que indicam uma fonte de dados de múltiplas tabelas base podem ser úteis incluem:
- Passando pelas etapas, como tabelas base para inscrições, históricos escolares e eventos de ex-alunos para uma tabela compartilhada de alunos.
- Contextos diferentes para os mesmos eventos, como tabelas base para eventos de consultas médicas e faturas de cobrança, com tabelas compartilhadas para contextualizar médicos ou pacientes.
- Diferentes domínios que podem se correlacionar, como cenários que anteriormente seriam melhor tratados com combinação de dados, como vendas de sorvete e clima correlacionados por meio de tabelas compartilhadas de data e local.
Saiba mais sobre quando relacionamentos multifatores são úteis nesta postagem do blog do Tableau: Quando e como usar relacionamentos multifatores no Tableau.
Identificar as tabelas base
Em um modelo de relações multifatoriais, a direcionalidade é importante. Ou seja, quais tabelas são as tabelas base no lado esquerdo do modelo e quais tabelas são compartilhadas posteriormente impactam o modo como as relações são avaliadas para retornar os resultados analíticos.
Considere uma gravata-borboleta conceitual de faturas, consultas, médicos e pacientes:
A maneira correta de construir o modelo de dados no Tableau é com Faturas e Compromissos como tabelas base e com Médicos e Pacientes como tabelas compartilhadas (não com Médicos e Pacientes como tabelas base).
Correto: Faturas e Compromissos como tabelas base | Incorreta: Médicos e Pacientes como tabelas base |
Conceitualmente, paciente (ou médico) é a entidade que une o evento da consulta e o evento da fatura.
Se o seu modelo de dados for inverso (como com Médicos e Pacientes como tabelas base em vez de Consultas e Faturas), o comportamento de junção de união de colunas externa não será tão útil. Sua análise pode mostrar muitas medidas e ambiguidades no escopo da tabela. Se você se deparar com campos relacionados de forma ambígua que não esperava, reavalie as tabelas que está usando como tabelas base e veja se seu modelo de dados precisa ser revertido.
Características das tabelas base e tabelas compartilhadas
Se você estiver realizando uma análise de vários fatos, as tabelas de fatos se tornarão as tabelas base e quaisquer tabelas de dimensão compartilhada serão tabelas compartilhadas. O Tableau não exige uma adesão estrita às características da tabela de fatos e dimensões. No entanto, existem determinados atributos que podem ajudá-lo a identificar quais tabelas devem ser tabelas base e quais devem ser tabelas compartilhadas.
Tabela base | Tabela compartilhada |
Tabelas de fatos em um esquema de data warehouse | Tabelas de dimensões compartilhadas ou conformadas em um esquema de data warehouse |
Específico para o contexto ou análise (informações de voo, uso de energia) | Conceito consistente em vários contextos (data, local) |
Medir pesado | Principalmente dimensões |
Atualizado/transacional com mais frequência (consultas médicas, prescrições, sinais vitais) | Mais estável/durável (médico, paciente) |
Tem campos de chave estrangeira | Tem campos de chave primária |
Baseado em eventos (horário de aula, nota em uma tarefa) | Baseado em entidade (aluno, sala de aula) |
Observe que se houver tabelas intermediárias entre uma tabela base e uma tabela compartilhada, você poderá trocar a tabela base sem alterar fundamentalmente o modelo de dados. (Como Informações do salão e Vendas de sorvete no primeiro exemplo.) O que importa é quais tabelas estão acima das tabelas compartilhadas e quais são compartilhadas.
Experimentar uma tabela base adicional
Existem vários cenários que podem indicar que você deve construir um modelo de relações multofatoriais com diversas tabelas base em vez de uma única fonte de dados de tabela base:
- Se você estiver tentando criar uma fonte de dados com um ciclo, a tabela downstream deverá ser outra tabela base.
- Se você tiver uma série de tabelas relacionadas nos mesmos conjuntos de cláusulas de relação (como data e local), essas dimensões deverão ser extraídas e transformadas em tabelas compartilhadas.
- Isso é especialmente útil porque múltiplas cláusulas de relacionamento devem ser todas verdadeiras (logicamente, um AND) para que as tabelas sejam relacionadas para esses registros.
- Se, em vez disso, você quiser analisar registros onde um pode ser verdadeiro por vez (um OR contextual), essa flexibilidade será fornecida pela configuração de um modelo de dados com tabelas de dimensões compartilhadas.
- Se você estiver usando uma combinação, mas quiser ter uma combinação equivalente sem fontes de dados primárias e secundárias, crie um modelo de dados que combine as fontes de dados da combinação com seus campos de vinculação em uma tabela ou tabelas compartilhadas.