A Modelagem de Data Warehouses e Data Marts – Parte 3

Nosso objetivo nesta terceira parte do artigo é abordar a forma de modelagem, utilizada apenas para data warehouses, conhecida como modelagem relacional denormalizada, que segue a escola Bill Inmon.

Clique aqui para ler esse artigo em PDF.

Clique aqui para ler todos os artigos desta edição

A Modelagem de Data Warehouses e Data Marts – Parte 3

Por Isabel Cristina Italiano e Luiz Antonio Esteves

Leitura Recomendada: SQL Magazine 13, artigo Modelagem de Data Warehouses e Data Marts – Parte 1 e SQL Magazine 14, artigo Modelagem de Data Warehouses e Data Marts – Parte 2.

 

Na primeira parte desta série de artigos foram apresentados os conceitos básicos e o conjunto de passos visando a modelagem dimensional de um Data Warehouse ou Data Mart. Definimos os fatos ou métricas (o que estamos avaliando), as dimensões de negócio (como os fatos serão analisados), a granularidade das informações (nível mais baixo de detalhe) e sua hierarquia de agrupamento, tendo como base um exemplo onde abordamos as necessidades de negócio de uma empresa.

Na segunda parte, modelamos o data warehouse/data mart de forma a atender a essas necessidades de negócio levantadas utilizando a modelagem dimensional ou multidimensional. Este tipo de modelagem segue a chamada “escola Ralph Kimball”, introdutor do conceito do “star schema”, um esquema bastante utilizado para a modelagem de bases de dados de suporte a decisão. Além do star schema, apresentamos também uma variação normalizada deste esquema denominada “snowflake”.

Apesar de ser amplamente difundida e utilizada, a modelagem dimensional ou multidimensional é criticada por um dos mais importantes consultores nesta área, Bill Inmon, considerado o “pai” do conceito de data warehouse.

Em seu artigo “The Problem with Dimensional Modeling”, Bill Inmon defende a teoria de que a modelagem dimensional é bastante adequada quando aplicada a data marts, porém não atende completamente aos requisitos de um data warehouse.

De acordo com Bill Inmon, o modelo multidimensional atende bem as necessidades do usuário quando utilizado em modelos departamentais, isto é, quando o usuário (ou grupo de usuários com a mesma necessidade) trabalha com sua “estrela” (também chamada de star join, componente resultante da modelagem multidimensional). Porém, os problemas com as “estrelas”, definidas de acordo com a modelagem multidimensional, começam a surgir quando múltiplas “estrelas” são necessárias para atender aos requisitos de informação dos usuários. Bill Inmon destaca, no artigo citado, alguns destes problemas como diferenças na forma da seqüência dos dados, diferentes definições de fatos entre as áreas, diferentes níveis de granularidade requeridos, diferentes visões de relacionamento entre os dados, entre outros. Ele mostra que todas estas diferenças devem ser representadas no mesmo data warehouse e que o modelo multidimensional é limitado e não consegue atender a todos estes requisitos.

Nosso objetivo nesta terceira parte do artigo é abordar esta outra forma de modelagem, utilizada apenas para data warehouses, conhecida como modelagem relacional denormalizada, que segue a “escola Bill Inmon”. Para isto, vamos seguir passo a passo as etapas para criar um modelo de dados para um data warehouse a partir de um modelo de dados corporativo conforme descrito no documento “Creating the data warehouse data model from the corporate data model” de Bill Inmon.

A modelagem relacional denormalizada e suas implementações

A modelagem relacional denormalizada tem normalmente como ponto de partida um modelo de dados da empresa já construído. Estes modelos de dados são construídos utilizando-se técnicas clássicas de modelagem com o objetivo de agrupar e sintetizar as necessidades de dados da organização e, normalmente, não fazem distinção entre ambientes transacionais e de suporte à decisão. Caso não esteja disponível um modelo de dados da empresa, pode-se tomar como ponto de partida um modelo de dados genérico existente no mercado, para o segmento de atividade da empresa em questão. Outras técnicas podem também ser utilizadas como “Engenharia Reversa” de bancos de dados existentes para obtenção do respectivo modelo de dados.

A partir de uma dessas opções de modelo, efetuaremos diversas transformações para obter o modelo de dados do data warehouse. " [...] continue lendo...

Artigos relacionados