Diferença entre a tabela de factos e a tabela dimensão?

Ao ler um livro para objectos de negócios, deparei - me com a tabela de termos-factos e dimensões.

Estou a tentar perceber qual é a diferença entre a tabela dimensão e a tabela de factos?

Li alguns artigos na internet, mas não consegui entender claramente..

Algum exemplo simples me ajudará a entender melhor?

Author: NoChance, 2013-11-18

7 answers

Isto é para responder à parte:

Estava a tentar perceber se as tabelas de dimensões podem ser tabelas de factos. também ou não?
A resposta curta (INMO) é não.Isso porque os 2 tipos de tabelas são criados por diferentes razões. No entanto, a partir de uma perspectiva de design de banco de dados, uma tabela dimensão pode ter uma tabela pai como o caso com a tabela fato que sempre tem uma tabela dimensão (ou mais) como pai. Além disso, os quadros fact podem ser agregados, Os quadros de dimensões não são agregados. Outra razão é que os quadros fact não devem ser atualizados enquanto os quadros dimensionais poderiam ser atualizados em alguns casos.

Mais detalhes:

As tabelas de factos e dimensões aparecem num esquema de estrelas. Um objetivo primário do esquema star é simplificar um complexo conjunto normalizado de tabelas e consolidar dados (possivelmente de diferentes sistemas) em uma estrutura de banco de dados que pode ser questionado em um muito eficiente forma.

Na sua forma mais simples, contém uma tabela de factos (exemplo: StoreSales) e uma ou mais tabelas de dimensões. Cada entrada de dimensão tem 0,1 ou mais tabelas de fatos associados a ele (exemplo de tabelas de dimensões: Geografia, Item, Fornecedor, Cliente, Tempo, etc.). Seria válido também para a dimensão ter um Pai, caso em que o modelo é do tipo "Floco de neve". No entanto, designers tentam evitar este tipo de design, uma vez que faz com que mais se junta esse desempenho lento. No exemplo of StoreSales, The Geography dimension could be composed of the columns (GeoID, ContenentName, Counteryname, StateProvName, CityName, StartDate, EndDate)

Em um modelo de flocos de Neve, você poderia ter 2 tabelas normalizadas para a Informação Geográfica, nomeadamente: tabela de conteúdo, tabela de país.

Podes encontrar muitos exemplos no esquema estelar. Veja Também isto para ver uma vista alternativa no modelo do esquema estelar Inmon vs. Kimball . Kimbal tem um bom fórum você também pode querer verificar aqui fora: Fórum de Kimball .

Editar: para responder a comentários sobre exemplos para 4NF:

  • exemplo para uma tabela de factos que viola 4NF:

Facto de Vendas (ID, BranchID, SalesPersonID, ItemID, Amount, TimeID)

  • exemplo para uma tabela de factos que não viole 4NF:

AggregatedSales (BranchID, TotalAmount)

Aqui a relação está em 4NF

O último exemplo é bastante incomum.

 33
Author: NoChance, 2013-11-18 01:56:11

Esta parece ser uma resposta muito simples sobre como diferenciar entre tabelas de factos e dimensões!

Pode ajudar a pensar nas dimensões como coisas ou objectos. Uma coisa assim como um produto pode existir sem nunca estar envolvido em um negócio evento. Uma dimensão é o teu substantivo. É algo que pode existir independente de um evento de negócios, como uma venda. Produtos, Empregados, equipamento, é tudo o que existe. Uma dimensão ou algo, ou tem algo feito a isso. Os empregados vendem, os clientes compram. Funcionários e clientes são exemplos de dimensões, sim. Os produtos são vendidos, também são dimensões porque têm algo feito a eles. Os factos são o verbo. Uma entrada numa tabela de factos marca um evento discreto isso acontece a algo da mesa dimensional. Venda seria registado numa tabela de factos. O caso da venda seria note-se que produto foi vendido, que empregado o vendeu, e que o cliente comprou-o. Produto, empregado e cliente são todas as dimensões que descrevem o evento, a venda.

Além disso, as tabelas de factos também têm normalmente algum tipo de dado. A quantidade vendida, o preço por item, o preço total, e assim por diante.

Fonte: http://arcanecode.com/2007/07/23/dimensions-versus-facts-in-data-warehousing/

 55
Author: AeyJey, 2015-08-06 17:46:06

Em Data Warehouse Modeling, um star schemae um snowflake schemaconsiste em Facte Dimension tabelas.

Quadro De Factos:

  • contém todas as chaves primárias da dimensão e factos ou medidas(é uma propriedade sobre a qual podem ser feitos cálculos) como a quantidade vendida, a quantidade vendida e as vendas médias.

Quadros De Dimensões:

  • as tabelas de dimensões fornecem informação descritiva de todas as medições registadas na tabela de factos.
  • As dimensões são relativamente pequenas como comparação da tabela de factos.
  • As dimensões mais comuns são as pessoas, os produtos, o local e o tempo.

enter image description here

Fonte da imagem

 42
Author: Premraj, 2018-07-28 14:51:41
Achei esta resposta mais fácil de entender do ponto de vista de uma pessoa que não conhece muito da terminologia DB/DW.

Http://databases.about.com/od/datamining/a/Facts-Vs-Dimensions.htm

Vou recomendar passar por isto primeiro e depois pela resposta do Emmad Kareem para mais granularidade. Espero que seja útil.
 5
Author: aa8y, 2014-04-19 08:55:30
  1. o quadro de factos consiste principalmente em factos empresariais e chaves estrangeiras que se referem às chaves primárias nos quadros de dimensões. Uma tabela de dimensões consiste principalmente de atributos descritivos que são campos textuais.
  2. uma tabela de dimensões contém uma chave substituta, uma chave natural e um conjunto de atributos. Pelo contrário, uma tabela de fatos contém uma chave estrangeira, medições e dimensões degeneradas.
  3. Os quadros de dimensões fornecem informação descritiva ou contextual para a medição de uma tabela de fatos. Por outro lado, as tabelas de fatos fornecem as medições de uma empresa.
  4. Ao comparar o tamanho das duas tabelas, uma tabela de fatos é maior que uma tabela dimensional. Numa tabela de comparação, são apresentadas mais dimensões do que as tabelas de fatos. Em uma tabela de fatos, menos números de fatos são observados.
  5. a tabela dimensão tem de ser carregada primeiro. Ao carregar as tabelas de fatos, deve-se olhar para a tabela dimensão. Isto é porque a tabela de fatos tem medidas, fatos e chaves estrangeiras que são as chaves primárias na tabela dimensão.

Leia mais: Tabela de dimensões e tabela de factos / diferença entre / Tabela de dimensões vs tabela de factos http://www.differencebetween.net/technology/hardware-technology/dimension-table-and-fact-table/#ixzz3SBp8kPzo

 1
Author: guest, 2015-02-19 11:52:10

Na forma mais simples, eu acho que uma tabela dimensão é algo como uma tabela 'mestre' - que mantém uma lista de todos os 'itens', por assim dizer.

Um quadro de factos é um quadro de transacções que descreve todas as transacções. Além disso, dados agregados (agrupados), como o total das vendas por pessoa que vende, o total das vendas por ramo de actividade económica - estes tipos de quadros também podem existir como quadros de factos independentes.

 1
Author: user5729371, 2015-12-30 05:19:15

Tabela dimensão: não é nada, mas podemos manter informações sobre a data caracterizada chamada como tabela dimensão.

Exemplo: Dimensão Temporal, Dimensão Do Produto. Tabela de fatos: não é nada, mas podemos manter informações sobre as métricas ou dados de pré-cálculo. Exemplo: Facto De Vendas, Facto De Ordem.

Esquema de estrelas: uma ligação da tabela de factos com a forma da tabela dimensão como um esquema inicial.

Indique aqui a descrição da imagem

 -3
Author: Maheshwar Reddy, 2018-06-15 07:45:47