terça-feira, 1 de abril de 2014

BI: Tipos de colunas de uma tabela Fato

Tabelas fatos são coleções de métricas associadas com processos de negócios específicos. Estas métricas são armazenadas em colunas. Por dedução, percebemos que este tipo de coluna é conhecido como Measures (métricas). Este tipo de coluna é a essência de uma tabela Fato, são geralmente tipos numéricos que podem sofrer agregações. Eles geralmente armazenam valores que são de interesse do negócio, como total de vendas, quantidade de pedidos ou total de desconto.


Uma tabela Fato também é composta de Foreign Keys (chaves estrangeiras). Estas colunas são um tipo a parte, pois são responsáveis pelo relacionamento entre as fatos e as dimensões. Em um relacionamento entre tabelas Fato e Dimensões, a Fato sempre será o lado Many (muitos). Quando agrupamos as Foreign Keys, geralmente temos um identificador único da linha, o que podemos utilizar para compor nossa Primary Key (Chave primaria).

Você também irá encontrar um tipo de campo muito comum em Data Warehouse, trata-se do Surrogate Key. Este tipo de coluna é único em uma tabela Fato, identificando a linha exclusivamente.

Assim como em tabelas dimensões, temos as colunas do tipo Lineage, que armazenam informações de processamento do Data Warehouse, são úteis para auditoria e controle de carga. Este tipo de coluna nunca é exposto ao usuário final.

Em resumo, temos as seguintes colunas em uma tabela Fato:
  •  Measures – são as métricas em si, essência de uma tabela Fato;
  •  Foreign Key – fazem as relações entre as tabelas Fatos e as Dimensões;
  •  Lineage – colunas opcionais, armazenam informações para auditoria;
  •  Surrogate Keys – Primary Key (chaves únicas) – identificam unicamente as linhas em uma tabela Fato.
As tabelas fatos armazenam geralmente a maior quantidade de informação em um Data warehouse, grande parte do esforço de carga é empregado em torno destas tabelas. Para uma boa performance e eficiência de um DW, é importante a escolha dos tipos corretos de campos e forma de armazenamento das colunas em uma tabela Fato, escolher um tipo inteiro em lugar de um tinyint pode ser inofensivo quando tratamos com centenas de registros, mas pode significar muito espaço quando tratamos de milhões de linhas.

Conhecer a composição de uma tabela Fato é essencial para uma boa modelagem e assim aplicação de boas práticas em um DW.

;) até mais

Um comentário:

Everson disse...

Ótimo conteúdo... parabéns!

Tags

Microsoft (82) Google (33) Windows (23) Internet (20) Windows 7 (15) Internet Explorer (13) Segurança (12) Games (11) Gmail (5) Jogos (5) Mobile (5) Mozila Firefox (5) Visual Studio 2010 (5) Banco de Dados (4) Kinect (4) Orkut (4) Video Game (4) Videos (4) 3D (3) Chrome Os (3) Twitter (3) Web Designer (3) YouTube (3) Acessibilidade (2) Adobe (2) Analise (2) Artigos (2) Asp.Net (2) HTML5 (2) Internet Explorer 9 (2) Live Messenger (2) SqlServer (2) Steve Jobs (2) Sun (2) Telefonia (2) Wifi (2) Yahoo (2) blizzard (2) .Net (1) 3G (1) 4G (1) App Store (1) CEO (1) Cinema (1) Firefox (1) IBM (1) Java (1) Mozilla (1) Música (1) Nuvem (1) PS3 (1) PSN (1) Steve Ballmer (1) Televisor (1) Visual Studio 11 (1) Web 2.0 (1) eBook (1) w3c (1)