• Sonuç bulunamadı

Ao contrário do modelo de entidade e relacionamento, amplamente utilizado na modelagem dos bancos de dados relacionais, o modelo dimensional é uma técnica de concepção e visualização (camada de apresentação) de dados de um

conjunto de variáveis que descrevem aspectos comuns de negócios. De acordo com Kimball e Ross (2002), se a camada de apresentação for baseada em bancos de dados relacional, essas tabelas modeladas dimensionalmente denominam-se star schema ou esquema de junção em estrela. Caso a camada de apresentação seja baseada em uma tecnologia de banco de dados multidimensional ou de processamento analítico on-line (OLAP – Online Analytic Processing), os dados são armazenados em cubos. A modelagem dimensional se aplica em ambos os tipos de bancos de dados (relacional ou multidimensional), porém há uma distinção no que diz respeito à sua implementação física.

A modelagem dimensional, baseada em dimensões e fatos, foi introduzida na década de 1960 em um projeto de pesquisa conjunto realizado pela General Mills e pela Dartmouth University, com o objetivo de simplificar a apresentação de informações analíticas, tornando os bancos de dados fáceis e compreensíveis (KIMBALL; ROSS, 2002). A terminologia da modelagem dimensional foi aperfeiçoada por diversos pesquisadores, empresas de Tecnologia da Informação e fornecedores de solução, mas Ralph Kimball tornou-se praticamente um sinônimo de modelagem de dados dimensional nesse seguimento.

A modelagem dimensional deve ser iniciada pela definição do Data Mart (DM), isto é, definição do esquema de tabelas de fatos e de dimensões que atenderá o processo de negócio. Em seguida, a granularidade dos fatos (nível de detalhes a serem armazenados) deve ser definida: “alto nível de detalhe – baixo nível de granularidade e baixo nível de detalhe – alto nível de granularidade” (INMON, 1997, p. 45). O próximo passo consiste em identificar com precisão as dimensões e seus atributos, pois atributos de dimensões eficazes facilitam o processo de separação e combinação de dados (slicing and dicing) e a implementação das interfaces com os usuários da informação. Geralmente os atributos são qualitativos e caracterizam os ramos do negócio envolvidos na medida de desempenho de determinado fato. Por último, a modelagem é finalizada com a definição dos fatos a serem armazenados, que devem ser compatíveis com o nível de detalhe da granularidade.

Tabelas de fato:

A tabela de fato é a principal tabela de um modelo dimensional em que as medições numéricas de desempenho da empresa estão armazenadas (Kimball e Ross, 2002). Um fato usualmente representa uma medição de negócio e a

quantidade de dimensões define a granularidade da tabela de fatos, informando qual é o escopo da medição. Em geral, todas as tabelas de fatos possuem duas ou mais chaves estrangeiras (FK – Foreign Key) que corresponderão a uma chave primária (PK – Primary Key) de um registro específico na tabela de dimensão (Figura 15). Usualmente, a chave primária da tabela de fatos é formada pela junção das chaves estrangeiras, e a ela dá-se o nome de chave composta ou concatenada. Os melhores fatos e os mais úteis são numéricos e possuem características peculiares: são diferentes a cada medição e modificam a cada combinação de atributos contidos nas tabelas dimensão.

Tabelas de dimensão:

A tabela de dimensão sempre estará vinculada à tabela de fato e contém descritores textuais e discretos, ou seja, dados descritivos do negócio da empresa. As tabelas dimensão são simétricas em relação à tabela fato, geralmente possuem uma chave primária simples (PK) e campos denominados atributos. A cada chave primária da tabela de dimensão corresponderá, exatamente, uma chave estrangeira na tabela de fato, permitindo, assim, a ligação entre ambas. Apesar de muitas vezes conterem campos numéricos (descritores discretos) e textuais, a diferença em relação aos fatos é que nas dimensões eles são constantes, ou seja, não variam continuamente a cada nova amostra (KIMBALL, 1998).

FIGURA 15 – Tabelas de fatos e de dimensões em um modelo dimensional

Fonte: Adaptado de Kimball (2002).

No modelo entidade e relacionamento, a normalização é um requisito constante dos projetistas, em que a técnica objetiva remover ao máximo a

redundância de dados. Normalmente, na modelagem dimensional as tabelas de dimensão não possuem muita normalização e são preenchidas com atributos descritivos, que são associados à tabela de fato por meio das chaves estrangeiras (FK). Para Kimball e Ross (2002), no esquema de junção em estrela (star schema) são observadas a simplicidade e simetria, o que facilita a compreensão e a percepção dos dados pelos usuários da área de negócio. Já o esquema de flocos de neve (snowflake schema) propõe a normalização das tabelas de dimensão, na qual há a explicitação das hierarquias entre elas. Porém, pode haver prejuízo da finalidade do DW, principalmente na operacionalização intuitiva dos usuários da informação e na performance de consultas (Figura 16).

FIGURA 16 – Esquema floco de neve (snowflake schema)

Na modelagem multidimensional, em que os dados são armazenados em cubos, as medições residem na interseção de várias dimensões, conforme demonstrado na Figura 17. Com base nesse cubo, os usuários da informação e áreas de negócios separam e combinam os dados no DW em infinitas combinações. O processo de “separação e combinação” em cada uma das dimensões, normalmente é denominado como slicing and dicing (KIMBALL; ROSS, 2002).

Os cubos multidimensionais, geralmente suportados por ferramentas OLAP, são fundamentais para permitir flexibilidade para que os usuários da informação realizem consultas analíticas, usualmente demandas de informações não estruturadas. Cada aresta do cubo representa uma dimensão de negócio, cada linha ou coluna de cada aresta representa um elemento de dimensão e as células do cubo são preenchidas com valores quantitativos (medidas ou fatos).

No cubo, o nível de granularidade das informações permite a navegação nas medições em um nível mais elevado da hierarquia a partir de um nível mais detalhado. Esse processo é denominado drill up. Com a realização do inverso, navegando para níveis mais baixos da hierarquia, são obtidos dados mais detalhados. Esse processo é denominado drill down. Nesse caso, um drill down eficiente deve permitir a utilização de qualquer atributo disponível nas tabelas de dimensão.

FIGURA 17 – Cubo - modelo multidimensional

Fonte: Adaptado pelo autor.

Benzer Belgeler