Você está na página 1de 11

Modelando um Data Warehouse Dimensional a partir de um Modelo Hierrquico

Antonio Csar Centenaro1, Cssio Frederico Druziani1, ngelo Alfredo Sucolotti1, Jos Leomar Todesco2
1

Centro Universitrio de Toledo (CEUT) Universidade Paranaense (Unipar) Av. Parigot De Souza, 3636 CEP 85903-170 Toledo PR Brasil

Universidade Federal de Santa Catarina (UFSC) Laboratrio Stela Florianpolis SC Brasil


acc@unipar.br, druziani@unioeste.br, aas@unipar.br, tite@eps.ufsc.br

Abstract. This article primarily describes hierarchical model that represents its diagrams and data through a number of registries and links, forming tree structures. Next, it presents concepts about Data Warehouse, which is considered to be data warehouses where companies keep their information regarding its businesses. This article also discusses dimensional model, one of the most used models by this technology, where the information is organized in the form of fact tables and dimensions table, given it a star aspect that originated the term star schema. Finally, the article presents a transition of a hierarchical model to a dimensional model through the use of examples that describe how this transition and modeling occur. Resumo. Este artigo primeiramente descreve o modelo hierrquico que representa seus diagramas e dados atravs de conjuntos de registros e ligaes (links), formando estruturas em rvores. Em seguida apresenta conceitos sobre Data Warehouse, considerados armazns de dados onde as empresas guardam suas informaes referentes aos seus negcios. Este trabalho tambm discute o modelo dimensional, um dos mais utilizados por esta tecnologia, onde as informaes so dispostas em forma de tabelas de fatos e dimenses, dando um aspecto de estrela o que originou o termo esquema estrela. Finalmente o artigo apresenta uma transio de um modelo hierrquico para um modelo dimensional atravs da utilizao de exemplos que descrevem como esta transio e modelagem ocorrem.

1. Introduo
Nos ltimos anos o relacionamento entre as empresas e seus clientes vem tomando uma nova direo. As empresas j no satisfazem seus clientes apenas conhecendo bem seus produtos ou servios, existe a necessidade, to importante quanto, de se conhecer tambm os prprios clientes, suas preferncias, seus padres, suas faixas de valores. Este aumento de interatividade entre empresa e cliente acabou gerando um relacionamento, relacionamento este que, quanto mais duradouro e interativo for, maiores benefcios ambos os envolvidos obtero, ou seja, a empresa ter subsdios para fornecer ao cliente produtos e servios mais personalizados ou em maior conformidade com as necessidades dos clientes visto que as mesmas conhecero melhor sua clientela,

seus gostos, valores, entre outros. O cliente por sua vez ter menos incentivo a procurar um novo fornecedor que supra suas necessidades visto que o mesmo se sentir satisfeito com os servios prestados pelo atual. Esse novo enfoque comercial que est sendo dado ao relacionamento entre empresa e cliente aumentou a quantidade de informaes geradas nas transaes operacionais das organizaes. As informaes comearam a ser geradas e conseqentemente armazenadas, formando grandes depsitos de dados conhecidos como Data Warehouse (DW), e que so considerados por muitos como sendo a memria da empresa. Este ambiente de DW no implementado juntamente com os sistemas operacionais existentes, modelado e construdo separadamente, formando assim, dois ambientes distintos, apesar do segundo fazer uso de dados originados no primeiro. Estes sistemas legados em sua grande maioria so desenvolvidos utilizando-se uma modelagem relacional, cuja representao do modelo lgico do banco de dados se faz atravs da utilizao de Diagramas de Entidade-Relacionamento. Porm, em alguns casos, utiliza-se outros tipos de modelagens e, dentre elas, destaca-se a modelagem hierrquica cuja representao grfica do projeto lgico do banco de dados se baseia em Diagramas de estruturas em rvore. A construo de um DW se utiliza, em sua grande maioria, de uma modelagem Dimensional cujo projeto lgico do banco de dados representado graficamente atravs de um esquema estrela. Este artigo prope uma forma de efetuar a modelagem dimensional de um DW utilizando-se como base um sistema operacional que possua um banco de dados utilizando um modelo hierrquico.

2. Modelo Hierrquico
Um banco dados hierrquico uma coleo de registros conectados uns aos outros por meio de links (SILBERSCHATZ, KORTH e SUDARSHAN, 1999). Cada registro uma coleo de campos com valores distintos e os links existem entre somente dois registros. Esses registros e suas ligaes so representados atravs de estruturas ordenadas em rvores enraizadas, cujo conjunto dessas rvores conhecido como florestas. Esta estrutura muito semelhante ao modelo rede no que se refere aos conjuntos de registros interligados atravs de links. Porm em relao ao modelo relacional, ela difere bastante visto que neste, existem entidades e relacionamentos, sendo representados por meio de tabelas. Considere como exemplo um pequeno banco de dados representando logicamente duas tabelas Produto e Tipo. O registro de produto ter os campos cdigo, descrio e quantidade e o registro de tipo ter os campos cdigo, descrio. A Figura 1 ilustra este pequeno banco de dados utilizando o modelo hierrquico. Talvez o contedo de um registro particular precise ser duplicado em diversos locais diferentes (KORTH e SILBERSCHATZ, 1995). Esta duplicao alm aumentar a complexidade do modelo, que j no pequena, fatalmente implicar em um risco de inconsistncia nos dados alm do aumento do consumo de espao em disco. Segundo KORTH (1995), estes inconvenientes da redundncia de informaes podem ser

amenizados atravs da utilizao de um conceito de registro virtual, que, apesar de amenizar o problema, no diminui a complexidade de entender um modelo hierrquico criado para modelar um grande banco de dados.

Figura 1 Ilustrao de um banco de dados utilizando o modelo hierrquico.

Este modelo utiliza-se de diagramas com estrutura em rvores para representar graficamente seu banco de dados. Estes diagramas so compostos por retngulos e linhas representando os registro e as ligaes entre eles respectivamente. Para cada diagrama desse tipo, h uma nica instncia de rvore de banco de dados. A raiz dessa rvore um n dummy (auxiliar). Os filhos daquele n so instncias dos tipos de registros apropriados e podem por sua vez, possuir diversas instncias de vrios tipos de registros (SILBERSCHATZ, KORTH e SUDARSHAN, 1999). Um diagrama com estrutura de rvore serve aos mesmos propsitos que um diagrama entidade-relacionamento, ou de um diagrama de dados do modelo rede, ou seja, ele especifica a estrutura lgica geral do banco de dados (KORTH e SILBERSCHATZ, 1995). A Figura 1 ilustra este diagrama com estrutura de rvore. A Figura 2 mostra um diagrama representando o modelo de um pequeno banco de dados que contm dois conjuntos de registros produto e tipo, sendo que neste exemplo cada produto ter um nico tipo associado e cada tipo poder estar associado a muitos produtos (um para muitos de tipo para produto). A Figura 3 mostra a forma de implementar um relacionamento quando um produto pode estar associado a vrios tipos e cada tipo pode estar relacionado a vrios produtos (muitos para muitos). Como citado anteriormente o modelo hierrquico muitas vezes pode ocasionar redundncia dos dados, isto acontece quando os relacionamentos ocorrem de muitos para muitos como na Figura 3, onde o produto pepino possui classificao como cereal e fruta. Segundo DATE (1990) poderamos, ao invs de representar o elo entre os registros utilizando links, adicionar chaves estrangeiras nos registros de modo que, segundo a noo de essencialidade, a ligao no seria mais necessria, porm esta alterao, implicaria em denormalizao do modelo hierrquico, descaracterizando-o.

Figura 2 Diagrama ilustrando uma ligao um para muitos de tipo para produto.

Figura 3 Exemplo de banco de dados representando uma ligao muitos para muitos

3. Data Warehouse
As organizaes possuem bancos de dados contendo enormes volumes de dados, e esses por sua vez, so de vital importncia para as mesmas. Contudo, os banco de dados convencionais, sempre imputaram uma dificuldade em se efetuar anlises dos dados neles existentes, devido ao fato de que muitas vezes existirem vrios sistemas no interligados entre si. Essa estrutura no permite que as empresas identifiquem tendncias, analisem comportamentos e padres, enfim, no permite que sejam tomadas decises pautadas sobre um histrico de dados. O conceito de Data Warehouse (DW) surgiu no mercado com o intuito de suprir esta necessidade. Esse consiste em organizar os dados corporativos da melhor maneira, dando subsdio de informaes aos gerentes e diretores das empresas para as decises de nvel ttico-estratgicas, tudo isso num banco de dados paralelo aos sistemas operacionais da empresa. O DW o ponto central da arquitetura de processamento de informaes para sistemas de informtica modernos suportando o processamento informacional (SAD

Sistemas de Apoio Deciso) atravs de um alicerce slido de integrao de dados corporativos e histricos para a realizao de anlises gerenciais (INMON e HACKATHORN, 1997). O relacionamento entre empresa e cliente vem se alterando nos ltimos anos, aos invs de conhecer somente seus produtos e servios surgiu a necessidade de se conhecer muito bem seus clientes de modo que se possa fornecer produtos em maior conformidade com as necessidades dos mesmos, garantindo a sua fidelidade. Essa nova viso de relacionamento acabou por gerar uma enorme massa de dados que passou a ser armazenada de forma organizada, de modo a garantir a performance de acesso. Criaram-se ferramentas para se fazer o acesso ordenado e eficiente a esses dados histricos, tambm tratados como sendo a memria das empresas. Segundo INMON (1997), Data Warehouse (DW) uma coleo de dados orientados a assuntos, integrados, variveis com o tempo e no volteis para suporte ao processo gerencial de deciso. Os dados que alimentam os data warehouse so oriundos dos sistemas legados (operacionais que as empresas j possuem). Logo se tem dois ambientes, o operacional, onde as transaes relacionadas ao dia-a-dia da empresa acontecem e outro, onde aps uma extrao, uma transformao e uma carga desses dados oriundos dos sistemas operacionais, formam um banco de dados histrico que permite a anlise dos dados sendo este, um banco de dados somente para consulta no sendo permitido alterao do seu contedo. Nos sistemas operacionais convencionais busca-se otimizar ao mximo a performance de acesso s transaes, j em um DW o que se prioriza a qualidade da informao em tempo hbil. Segundo KIMBALL (1998), o DW fornece acesso a dados corporativos ou organizacionais, seus dados so consistentes podendo ser separados e combinados usando-se qualquer medio possvel no negcio, um DW no consiste apenas em dados, mas em um conjunto de ferramentas para consultar, analisar e apresentar informaes, um local onde se publica dados confiveis sendo a qualidade desses um impulso reengenharia de negcios. Construir um DW o processo de combinar as necessidades de informaes de uma comunidade de usurios com os dados que realmente esto disponveis (KIMBALL, 1998). O Data warehouse possui uma estrutura distinta. Existem diferentes nveis de sintetizao e detalhe que demarcam o data warehouse, e, adicionalmente, diferentes nveis de idade dos fatos (INMON e HACKATHORN, 1997). Alm de possuir os dados, estando eles sintetizados ou no, o DW tambm se responsabiliza em armazenar informaes sobre os dados que ele contm que so os Metadados, a principal funo desses metadados fornecer uma documentao imprescindvel ao projeto de Data Warehouse que juntamente com outros fatores pode representar o sucesso ou o fracasso deste projeto.

4. Modelo Dimensional
A modelagem dimensional permite ao usurio observar seu banco de dados no formato de um hipercubo contendo duas, trs ou quantas dimenses forem possveis e aplicveis. Esta modelagem proporciona um ganho de tempo na consulta, uma melhor organizao do sistema e principalmente a sua utilizao de forma intuitiva para o usurio. Modelagem dimensional um nome novo para uma tcnica antiga usada para criar banco de dados simples e compreensveis (KIMBALL, 1998). Modelos multidimensionais proporcionam uma estrutura de sistemas de informao que permitem que uma empresa disponha de acesso muito flexvel a dados, fatie e agrupe dados de qualquer nmero de maneiras explore dinamicamente o relacionamento entre dados resumidos e detalhados (INMON, 1997). Esses sistemas alm de oferecerem flexibilidade em relao s necessidades dos usurios fornecem um alto nvel de controle. O modelo dimensional fornece subsdios para que se respondam perguntas como Qual o total de vendas de cadeiras vermelhas em Curitiba no ms de maro? (HARRISON, 1998), permitindo que se analise os dados atravs da dimenso tempo, ou cor, ou utilizando-se quaisquer dimenses disponveis para efetuar o cruzamento das informaes e obter o resultado desejado. HARRISON (1998), ressalta que o modelo dimensional referenciado com freqncia atravs do termo esquema estrela devido organizao de seu projeto lgico de banco de dados. O Modelo dimensional combina tabelas de armazenamento de dados histricos em sries temporais, indexados em chaves dimensionais, descritas em tabelas dimensionais correspondentes (HARRISON, 1998). Ou seja, organizado atravs de tabelas de fato, que so as ocorrncias de transaes de negcios da empresa, e tabelas de dimenses que possuem o papel descritivo nessas transaes. Tabelas dimensionais iro guardar em sua maioria informaes textuais, as quais ajudam a definir um componente da dimenso do negcio, elas possuem dados sobre produtos, mercados, perodos de tempo. As tabelas de fatos por sua vez contm as medidas do negcio alm de conterem as informaes decorrentes das tabelas de dimenses, isso garante a preciso do acesso aos dados atravs de uma estrutura de chave completa, eliminando assim pesquisas em tabelas e resulta em maior desempenho possvel (HARRISON, 1998). A Figura 4 expe um modelo dimensional para um pequeno banco de dados de uma biblioteca composto por trs tabelas de dimenses (Aluno, Livro e Tempo) e uma tabela de fatos (Emprstimo).

Figura 4 Um modelo dimensional de um banco de dados.

5. Uma Proposta de Modelo Dimensional a partir de um Modelo Hierrquico


As organizaes que possuem um banco de dados utilizando Modelo Hierrquico de trabalho, alm de possuir uma complexidade adicional em relao modelagem relacional, possuem um maior dispndio de gastos para se extrair informaes analticas que servem de base para sistemas executivos. Alm disso, tambm muito custoso permitir que o usurio visualize suas consultas diretamente no banco de dados, visto que o mesmo imputa uma grande dificuldade para os mesmos, os usurios. A proposta fornecer subsdios para que se possa a partir de um modelo de dados hierrquico juntamente com exemplos de banco de dados, construir um banco de dados DW utilizando-se uma modelagem dimensional. A Figura 5 ilustra um diagrama de estrutura de rvore e a Figura 6 um exemplo de banco de dados correspondente ao diagrama da Figura 5. Este diagrama e seu exemplo demonstram uma pequena base de dados para uma biblioteca onde cada aluno poder emprestar vrios livros, porm um livro s poder ser emprestado a um aluno (relacionamento um para muitos de alunos para livros). Observa-se na Figura 5 que o registro de aluno composto por cdigo, nome, endereo e sexo e o registro de livro composto por cdigo, descrio e gnero, finalmente a ligao(link) entre eles um relacionamento um para muitos de aluno para livro. A partir desse diagrama foi construdo um exemplo de banco de dados seguindo tal diagrama de modo a representar graficamente como as informaes ficariam dispostas. Com base nessas duas figuras (Figura 5 e Figura 6) criou-se um modelo dimensional onde o registro aluno foi transformado em uma dimenso aluno ficando com os mesmos atributos somente alterando o nome do primeiro campo para Chave_aluno ao invs de cdigo. O registro de livro tambm permaneceu o mesmo, sofrendo tambm somente alteraes no seu primeiro campo que passou a ser chamado de Chave_livro. Para armazenar as informaes referentes aos emprstimos (que so a

real atividade e que merece adicional ateno) foi criada uma tabela de Fatos contendo como atributos Chave_emprestimo, que uma chave artificial para seqencializar os registros nesta tabela, Chave_aluno para inserir a dimenso aluno tabela de fatos, Chave_livro para inserir a dimenso livro tabela de fatos formando juntamente com a dimenso aluno os objetos mais importantes desta tabela de fatos e finalmente a Chave_tempo que uma das caractersticas mais marcantes de um DW, a informao histrica. Por conseqncia criou-se uma dimenso Tempo, para se ter os registros necessrios a futuras anlises sobre a tabela de fatos e suas dimenses obtendo-se uma anlise histrica sobre o comportamento dos dados.

Figura 5 Diagrama de estrutura de rvore para uma biblioteca

Figura 5 Diagrama de estrutura de rvore para uma biblioteca

Figura 6 Exemplo do banco de dados do diagrama da Figura 5.

Figura 7 Modelo dimensional do diagrama apresentado na Figura 5. Devido a sua complexidade, o modelo hierrquico vem sendo substitudo por novas tcnicas de modelagem, dentre elas destaca-se o modelo relacional que representa seus dados atravs de entidades, relacionamentos e atributos. A Figura 8 destaca um modelo relacional correspondente ao modelo hierrquico apresentado na Figura 5.

Figura 8 Diagrama relacional de um banco de dados para biblioteca Observa-se na Figura 8 que, para se obter o modelo dimensional proposto na Figura 7, partindo agora deste modelo relacional, seriam necessrias alteraes menos drsticas devido s similaridades existentes entre os modelos. As tabelas de cadastros, Aluno e Livro, foram transformadas em tabelas de dimenses; a tabela que representa o relacionamento muitos-para-muitos no diagrama foi transformada em tabela de fatos e, devido necessidade de identificao histrica dos fatos, criou-se dimenso tempo que, como citado anteriormente, constitui uma das principais caractersticas de um ambiente de DW. Tanto para povoar este modelo quanto qualquer outro que por ventura venha a ser desenvolvido, necessrio que haja um processo de extrao, transformao e carga

dos dados, planejado e eficiente de modo que as informaes possam ser extradas, organizadas, homogeneizadas e depois carregadas de forma organizada no DW de modo a fornecer subsdios eficientes e concretos para a alta administrao da empresa tomar decises de carter ttico-estratgicas.

6. Concluses e Recomendaes para Estudos Futuros


Apesar de complexo e antigo, o modelo hierrquico ainda utilizado por muitas empresas que possuem todo o seu legado de informaes e sistemas operacionais rodando sobre estes modelos de bancos de dados. O processo de extrao de informaes de carter estratgico dessas bases torna-se um processo lento e complexo o que acarreta, em muitos casos, em uma busca ineficiente. Diante desses fatos introduziu-se o conceito de DW para suprir estas necessidades. Este processo de transio entre um modelo hierrquico e um dimensional deve ser cauteloso desde a sua concepo at a sua implementao propriamente dita, visto que, o modelo original, possui uma complexidade de organizao desses dados, diagramas e modelos. Se os processo de extrao, transformao e carga j so considerados por muitos como sendo o processo mais trabalhoso e crtico de uma implantao de DW, sendo o sistema hierrquico, o processo se torna decisrio para o sucesso, nesta etapa deve haver um comprometimento muito grande por parte dos envolvidos de modo que nenhum dos fatores complicantes deste modelo se torne um empecilho para a implantao desse DW. Cabe aqui antecipar a necessidade de pesquisa no que diz respeito a esse processo de extrao, transformao e carga em sistemas que possuem modelos diferentes dos relacionais. Um prximo estudo a ser realizado poderia ser a disponibilizao dessas informaes em um ambiente de Web, visto que, no s este modelo e tambm alguns outros como o modelo de rede no permitem esta disponibilizao direta. Deveria ser pesquisado tcnicas e ferramentas de segurana para esta implantao alm de pesquisas sobre o processo como um todo de confeco dessas bases DW a partir de outros modelos que no o relacional visto que muitas empresas ainda os utilizam o que transforma esta tarefa um desafio.

7. Referncias Bibliogrficas
DATE, C. J. (1990) Introduo a Sistemas de Bancos de Dados 4 ed.. Rio de Janeiro: Campus. MACHADO, F. N. R. (2000) Projeto de Data Warehouse Uma Viso Multidimensional. So Paulo: rica. SILBERSCHATZ, A., KORTH, H., SUDARSHAN, S. (1999) Sistema de Banco de Dados. 3 ed.. So Paulo: Makron Books. KORTH, H. F., SILBERSCHATZ, A. (1995) Sistema de Banco de Dados. 2 ed.. So Paulo: Makron Books. HARRISON, T. (1998) Intranet Data Warehouse. So Paulo: Berkeley. INMON, W.H., HACKARTHORN, R. D. (1997) Como usar o data warehouse. Rio de Janeiro: IBPI Press.

KIMBALL, R. (1998) Data Warehouse Toolkit. So Paulo: Makron Books. INMON, W. H. (1997) Como Construir o Data Warehouse. 2 ed.. Rio de Janeiro: Campus.

Você também pode gostar