UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA - PDF
UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA
Download "UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA"
Vítor Vilaverde Palhares
1 UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO COORDENAÇÃO DE PÓS-GRADUAÇÃO EM INFORMÁTICA DISSERTAÇÃO DE MESTRADO Guardando Históricos de Dimensões em Data Warehouses André Barbosa Rocha Campina Grande PB Fevereiro de 2000
2 UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA - CCT DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO - DSC COORDENAÇÃO DE PÓS-GRADUAÇÃO EM INFORMÁTICA - COPIN MESTRADO EM INFORMÁTICA DISSERTAÇÃO DE MESTRADO GUARDANDO HISTÓRICOS DE DIMENSÕES EM DATA WAREHOUSES André Barbosa Rocha (MESTRANDO) Ulrich Schiel (ORIENTADOR) Campina Grande PB Fevereiro de 2000
3 ANDRÉ BARBOSA ROCHA GUARDANDO HISTÓRICOS DE DIMENSÕES EM DATA WAREHOUSES DISSERTAÇÃO apresentada à COORDENAÇÃO DE PÓS-GRADUAÇÃO EM INFORMÁTICA do DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO do CENTRO DE CIÊNCIAS E TECNOLOGIA da UNIVERSIDADE FEDERAL DA PARAÍBA como requisito parcial para obtenção do grau de MESTRE EM INFORMÁTICA. Área de Concentração : Linha de Pesquisa: Orientador : CIÊNCIA DA COMPUTAÇÃO SISTEMAS DE INFORMAÇÃO E BANCOS DE DADOS PROF. DR. ULRICH SCHIEL CAMPINA GRANDE Fevereiro 2000
4 iv Ficha Catalográfica ROCHA, André Barbosa R672G Guardando Históricos de Dimensões em Data Warehouses Dissertação (Mestrado) UFPB/CCT/COPIN, Campina Grande, Fevereiro de p. Il. Orientador: Ulrich Schiel 1. Bancos de Dados 2. Data Warehouses 3. Bancos de Dados Temporais CDU: B
5 Dedico este trabalho a : Minha mãe Gleudery. Um dia haveremos de nos encontrar novamente! Poliana, minha metade. Minha família, sempre confiante. Em especial à Yolanda, Mãe a quem devo tudo, a Glêryston, Pai e exemplo de vida, a Chagas, meu tio e pai, à Ângela, com muito carinho, e a meus irmãos de coração, Déborah e Danilo. Todas as pessoas que vêm no conhecimento um caminho para libertação da alma.
6 Digo-vos, em verdade, que, se não vos converterdes e tornardes quais crianças, não entrareis no reino dos céus. Aquele, portanto, que se humilhar e se tornar pequeno como esta criança será o maior no reino dos céus e aquele que recebe em meu nome a uma criança, tal como acabo de dizer, é a mim mesmo que recebe. (S. MATEUS, cap. XVIII, vv 1 a 5.)
7 Agradecimentos A Deus, pela oportunidade de existir. A Ulrich Schiel e Marcus C. Sampaio pelo apoio e amizade desde meus tempos de graduação. Às maravilhosas Josenita Ramos (Lili) e Águeda Cabral (Dadinha). À Aninha, pelo carinho com que me tratou todos esses anos. Ao professor Marcelo Barros por me apoiar em várias horas de minha vida. Aos grandes mafiosos, amigos de longa data. Aos grandes amigos do LSI. A todos os colegas, professores e funcionários do DSC pela amizade e companheirismo. À CAPES, pela bolsa de dois anos. A todos que de alguma forma contribuíram para realização deste trabalho, OBRIGADO!
8 ix Resumo ROCHA, André Barbosa, Guardando Históricos de Dimensões em Data Warehouses, Dissertação de Mestrado, Departamento de Sistemas e Computação, Universidade Federal da Paraíba, Fevereiro Um dos mais importantes patrimônios de uma organização é sua informação. Este patrimônio é quase sempre mantido na forma de sistemas transacionais, ou sistemas de produção. Grosso modo, um sistema de produção opera com dados detalhados e atualizados. Seu objetivo principal é apoiar as operações da organização no dia-a-dia, ou sua gerência no nível operacional. As gerências de nível mais alto da organização necessitam de informações sumariadas e históricas, não sendo portanto contempladas pelos sistemas de produção. A incapacidade dos sistemas de produção de apoiar as atividades de gerência de uma organização em todos os seus níveis tem engendrado intensos esforços de pesquisa e desenvolvimento no sentido de se construir sistemas de apoio à decisão stricto sensu, chamados Data Warehouses. Apesar dos enormes progressos neste sentido, muitos requisitos dos sistemas de apoio à decisão carecem ainda de soluções adequadas. Neste trabalho, tratamos do requisito tempo em Data Warehouses, apresentando uma solução formal para o problema do histórico de atributos de dimensões de Esquemas em Estrela. A motivação para o nosso trabalho partiu da constatação de que, embora os bancos de dados para sistemas de apoio à decisão devam ser temporais por definição, o tratamento que tem sido dado ao tempo (estruturas de dados e interfaces temporais) ainda é rudimentar.
9 x Abstract ROCHA, André Barbosa, Guardando Históricos de Dimensões em Data Warehouses, Dissertação de Mestrado, Departamento de Sistemas e Computação, Universidade Federal da Paraíba, Fevereiro One of the most important patrimony of an organization is its information. This patrimony is nearly always kept in the form of operational systems, or production systems. Broadly speaking, a production system works on updated and detailed data. Its main objective is to give support to the operations of the organization in the everyday life, or to its managing in the operational level. The higher levels of management in the organization need summarized and historical information, and are not, thus, covered by production systems. The incapacity of production systems in supporting managing activities on an organization in all its levels has forced intense research and development efforts towards building decision supports systems stricto sensu, called Data Warehouses. In spite of the huge progress in this direction, many of the requirements of these systems sill lack adequate solutions. In this work, we deal with the requirement time in Data Warehouses, presenting a formal solution for the problem of the dimensions attributes history in Star Schemas. The motivation for our work came from the awareness that, although the databases for decision support systems should be temporal by definition, the treatment that has been given to time (data structures and temporal interfaces) is still rudimentary.
10 xi Lista de Figuras Figura Cubo multidimensional com três dimensões 13 Figura Corte do cubo multidimensional para a Gerência Regional 17 Figura Cubo quadridimensional 22 Figura Esquema em estrela 23 Figura Slice&Dice no cubo dimensional da Figura Figura Arquitetura em camadas para Data Warehousing 31 Figura Arquitetura funcional básica de um ambiente de Dwing 32 Figura Arquitetura para OLAP multidimensional 37 Figura Arquitetura para data warehouses federativos 38 Figura Arquitetura em três camadas 39 Figura Esquema em estrela para Vendas no Varejo 43 Figura (a) Hierarquia de Produto 47 Figura (b) Hierarquia de Tempo 47 Figura 3.3 Dimensão Produto desmembrada 48 Figura 3.4 Dimensão Cliente típica 52 Figura 4.1 SCD Tipo 1 : alteração simples do atributo gerente da Loja 1 58 Figura 4.2 SCD Tipo 2 : Um novo registro com uma chave generalizada com dígito de versão é incluído na dimensão 60 Figura 4.3 SCD Tipo 3 : Dois valores para Gerente : antigo e atual; e uma data de efetivação da alteração 62 Figura 4.4 Dimensões demográficas 64 Figura 4.5 Exemplos de tabelas no TSS 66 Figura 4.6 Dimensão com uma chave de registro e uma chave de versão 69 Figura 4.7 Tabela de fatos sem fatos Histórica 69 Figura 5.1 Relação tri-dimensional temporal 74 Figura 5.2 Relação temporal Empregado-Gerente num modelo agrupado 78 Figura 5.3 Relação temporal de um modelo desagrupado 78 Figura 5.4 Meta-esquema Temporal em Estrela 79 Figura 5.5 MET* para vendas no varejo 81 Figura 5.6 Tabela de histórico para o Gerente da dimensão Loja 82
11 xii Figura 5.7 Resultado do browsing : select distinct Gerente, De, Até from HistóricoGerente where Loja# = 3; 83 Figura 5.8 Tabela HistóricoGerente adaptada ao browsing temporal 83 Figura 5.9 Tabela HistóricoGerenteReforma 85 Figura 5.10 Composição das dimensões Loja e Cliente 86 Figura 5.11 A linha do tempo no MET* 89 Figura 5.12 Visualização gráfica dos predicados de seleção para intervalos 94 Figura 5.13 HistóricoReforma 104 Figura 5.14 HistóricoReforma : tabela de histórico esparso 106
12 xiii Sumário Dedicatória Agradecimentos Epígrafe Resumo Abstract Lista de Figuras Sumário vi vii viii ix x xi xiii Capítulo 1 Introdução Contextualização Motivação Objetivo Relevância Organização 6 Capítulo 2 Sistemas de Informação, OLAP e Data Warehousing Introdução Evolução e Contextualização dos SI s On-Line Analytical Processing (OLAP) Definição Requisitos para Aplicações OLAP Modelos para Repositórios OLAP MOLAP (Multidimensional OLAP) ROLAP (Relational OLAP) Comparativo entre MOLAP e ROLAP Operações OLAP Data Warehousing DWing e DW Arquiteturas para Dwing Arquitetura em Camadas para Dwing Arquitetura Funcional Básica Arquiteturas Físicas 37 Capítulo 3 Esquema em Estrela: Características e Limitações Introdução O Esquema em Estrela em Detalhes Tabela de Fatos Tabelas de Dimensões A Dimensão Tempo Hierarquias Snowflake Schemas 47
13 xiv Browsing Dimensões que Mudam com o Tempo 51 Capítulo 4 Trabalhos Correlatos Introdução Propostas de Ralph Kimball Dimensões de Modificação Lenta (Slowly Changing Dimensions (SCD s)) SCD Tipo SCD Tipo SCD Tipo Dimensões Demográficas Temporal Star Schema Outras Abordagens Extensão à SCD Tipo Tabela de Fatos Histórica 69 Capítulo 5 Meta-esquema Temporal em Estrela (MET*) Introdução Bancos de Dados Temporais O Eixo do Tempo Conceitos Fundamentais Taxonomia do Tempo Taxonomia dos Bancos de Dados Modelos Temporais Meta-esquema Temporal em Estrela (MET*) Browsing Temporal A Semântica do Histórico Formalização do MET* A Semântica do Tempo Linha do Tempo Tempo Válido X Tempo de Transação X Tempo do DW Relações MET* Calendário Sincronismo Temporal Álgebra Temporal para o MET* Predicados de Seleção para Intervalos Operadores sobre Intervalos Produto Cartesiano Temporal Projeção Temporal MET*SQL O Modelo de Consulta Padrão Outros Exemplos Tabelas de Histórico Esparso Time-slice 106
14 xv Capítulo 6 Implementação do MET* Introdução Oracle8 Objeto-Relacional Classes e Objetos Polimorfismo Encapsulamento Herança Pacotes (Packages) Coleções Limitações para Implementação do MET* Limitações Estruturais Tabelas Particionadas Coleções OID s Limitações de Operadores TCP (Temporal Cartesian Product) TPROJECT (Temporal Projection) Implementação do MET* Refresh do MET* 123 Capítulo 7 Conclusões e Trabalhos Futuros Conclusões Trabalhos Futuros 128 Bibliografia 131 Apêndice A 139
15 Capítulo 1 Introdução 1.1 Contextualização No mundo capitalista globalizado em que vivemos hoje, a informação é o patrimônio mais precioso de qualquer organização. Em todos os níveis organizacionais (do Operacional ao Estratégico) a boa manipulação das informações resulta em melhores resultados no desempenho das atividades empresariais. Em tal contexto, a tecnologia, e mais particularmente a Tecnologia da Informação, exerce um papel diferencial de produtividade e competitividade para as empresas. Ao longo da evolução dos sistemas de informação (SI s), mudanças significativas aconteceram no papel e na abrangência da Informática dentro das organizações. O computador deixou de ser uma máquina de automação de processos produtivos para se tornar uma poderosa ferramenta de análise dos negócios para a alta gerência. Isto devido à crescente necessidade das empresas de agregarem valor às suas informações como uma forma de se manterem competitivas no mercado em que atuam. Competitividade, no mundo capitalista globalizado em que vivemos hoje, não significa tão somente agilidade, eficiência e rapidez dos processos produtivos, mas principalmente ter capacidade de prever as possibilidades futuras, as inovações, as futuras necessidades do mercado e até mesmo a criação de novos mercados. Olhar para e tentar prever o futuro (ou até mesmo construí-lo) é uma questão de sobrevivência para qualquer organização moderna. E o futuro depende essencialmente de uma importantíssima atividade tático-estratégica : o planejamento.
16 Introdução 2 As informações necessárias aos níveis decisórios das organizações são bastante distintas daquelas necessárias aos níveis de produção. A alta gerência necessita de informações sumariadas, agregadas sob diversos ângulos, orientadas a assuntos [Inmon 97]. Desta forma, os sistemas de informação que as manipulam também são essencialmente diferentes. No atual estágio evolutivo dos sistemas de informação destacamos o Data Warehousing e o processamento OLAP (On-line Analytical Processing). Juntas, essas duas tecnologias provêem para o usuário executivo as informações necessárias no nível corporativo para melhores tomadas de decisão. É muito comum encontrarmos na literatura os termos OLAP e Data Warehousing como sinônimos. Podemos assegurar que apesar de muito próximos esses termos se complementam sem, no entanto, se confundirem. Verdadeiramente, o processamento OLAP está inserido no ambiente de Data Warehousing, que, grosso modo, é a infra-estrutura tecnológica de hardware e software para a atividade de análise gerencial. Ambientes de Data Warehousing e ferramentas OLAP surgiram primeiramente no ambiente comercial, impulsionados pela crescente e diferenciada necessidade por informações no nível corporativo. Talvez por isso essas tecnologias careçam de melhor embasamento teórico-científico em alguns de seus conceitos e aspectos. A academia voltou seu interesse para tais tecnologias quando o mercado já estava por absorvê-las intensamente. 1.2 Motivação Durante algum tempo a academia seguiu um curso diferente no que concerne à integração de múltiplas bases de dados heterogêneas com vistas à análise gerencial [Widom 95]. O mercado, por sua vez, sempre sedento por resultados imediatos, seguiu seu próprio caminho no desenvolvimento das tecnologias OLAP e Data Warehousing. Desta forma, os conceitos que envolvem essas tecnologias ainda estão fortemente arraigados no âmbito comercial, carecendo da independência e do rigor acadêmico. Certamente por isso, há ainda muitos pontos abertos a pesquisas nesta área.
17 Introdução 3 Acreditamos que para fazer pesquisa nesta área é preciso, antes de tudo, esquecer sua origem comercial. Alguns aspectos já consagrados comercialmente precisam ser contestados para que se possa chegar a resultados independentes. Destacamos aqui o termo independente no sentido de que muito daquilo que é feito comercialmente é tendencioso. Além disso, muitas das idéias que são propostas e funcionam são encaradas como a solução do problema sem, no entanto, serem a melhor solução para o problema. Atribuímos isso ao ritmo alucinante do mercado de informática, que não deixa espaço para melhores investigações. Alguns pontos destas tecnologias necessitam verdadeiramente de um estudo mais aprofundado. E um ponto crucial refere-se às características essencialmente históricas dos bancos de dados voltados para análise. A análise gerencial que é feita sobre repositórios OLAP tem um caráter histórico. Tanto que o tempo é tratado como uma dimensão à parte. Apesar dos data warehouses serem bancos de dados históricos por natureza, o tratamento dado ao tempo ainda é, em certos aspectos, rudimentar. Deve-se isso talvez ao esquecimento (ou falta de conhecimento) por parte dos experts em Data Warehousing da ampla pesquisa realizada sobre bancos de dados temporais. Certamente essas duas áreas estão intimamente ligadas, porém, pouco se tem feito para uni-las. Neste trabalho atacamos um problema básico dos esquemas em estrela (o esquema relacional para data warehouses). Na forma como são concebidos, estes esquemas tratam as tabelas de dimensão como sendo estáticas, imutáveis. Porém, mostramos nesse trabalho que isso não é verdade na prática. Valores de atributos de dimensões podem mudar ao longo do tempo. Tais alterações podem ser de grande interesse para o usuário executivo. Portanto, devemos de alguma forma guardar o histórico de seus valores antigos. Afinal, assim como os bancos de dados temporais, data warehouses são append-only. Informações armazenadas em um data warehouse não devem simplesmente ser descartadas, já que elas tiveram seu período de validade. As soluções propostas por outros autores para permitir alterações em valores de atributos dimensionais não são satisfatórias. Boa parte delas são decisões de projeto que atacam problemas específicos e muitas delas não guardam o histórico
18 Introdução 4 corretamente. Além disso, todas carecem de rigor formal. Por isso resolvemos atacar esse problema. 1.3 Objetivo O trabalho objetiva fornecer uma solução completa, eficaz e formal para guardar o histórico de dimensões dos esquemas em estrela. A tarefa consiste em manter o histórico de valores de atributos dimensionais de forma correta, concisa, simples e geral. Nossa solução não altera o esquema em estrela tradicional para que suas principais características se mantenham intactas. Ela permite que os históricos de quaisquer atributos (ou conjuntos de atributos) de quaisquer dimensões sejam guardados corretamente. Acreditamos que a solução para guardar qualquer informação histórica passa pela teoria dos bancos de dados temporais. Por isso fomos buscar nessa teoria os conceitos e técnicas que poderiam ser-nos úteis, adaptando-os para nosso problema específico. Essa adaptação é cercada de algumas restrições, impostas pela natureza do ambiente de DWing que difere substancialmente do ambiente operacional para o qual os BD s temporais ainda são desenvolvidos. Não restringimos nosso objetivo a desenvolver uma solução apenas no nível de infraestrutura, como as outras propostas de outros autores fizeram. Nosso objetivo é também fornecer uma interface para manipulação da estrutura que propomos (o MET* - Meta-esquema Temporal em Estrela). Porém, além de uma interface gráfica que está sendo construída, definimos uma linguagem de consulta (MET*SQL). Essa necessidade surgiu na medida em que a estrutura proposta possibilitou a execução de novas operações analíticas, diferentes daquelas executadas sobre esquemas em estrela tradicionais. Preocupamo-nos também em evitar ambigüidades. Por isso optamos por formalizar nossa proposta. A formalização abrange deste a estrutura lógica até a linguagem de consulta para sua manipulação. Com isso, nossa solução pode ser chamada de modelo. Todavia, preferimos continuar chamando-a de esquema já que ela
19 Introdução 5 é uma extensão dos esquemas em estrela e este termo já está consagrado na literatura de DWing. 1.4 Relevância Acreditamos que a relevância do nosso trabalho será melhor entendida à medida que o leitor analisar os vários exemplos de situações específicas e típicas da análise gerencial que discutimos ao longo do trabalho. Vale salientar que o problema das dimensões que mudam com tempo foi discutido inicialmente por Ralph Kimball em [Kimball 98] e em alguns artigos técnicos de revistas especializadas [Kimball 98b]. Aparentemente ele foi o primeiro autor a detectar tal problema em projetos de DWing. Ao longo de nossos trabalhos, porém, pudemos comprovar a importância do tema através de discussões que surgiram na lista de discussão por Esta lista é composta por pessoas de várias partes do mundo ligadas a projetos ou pesquisas em DWing. Um dos integrantes é o próprio Ralph Kimball. Nos anos de 1998, 1999 e início de 2000 surgiram várias discussões sobre o assunto. Boa parte delas foi iniciada por projetistas que estavam enfrentando problemas em atender certas exigências dos usuários de seu ambiente. Essas exigências tinham a ver justamente com o histórico de atributos dimensionais. Nessas discussões pudemos avaliar o quão este tema é importante e o que está sendo feito pelo mundo afora para solucioná-lo. O mais intrigante é que nenhuma das soluções apresentadas na lista pelo menos cita o termo bancos de dados temporais. Muitas delas são apenas variações das propostas de Kimball. Outras, inconscientemente, passam perto da teoria do bancos de dados temporais. Porém, nenhuma delas efetivamente utiliza os conceitos dessa tecnologia para resolver o problema do histórico de dimensões. Quando chegávamos à fase final do trabalho, encontramos um artigo acadêmico sobre o assunto [Bliujute et al 98]. Ele veio reforçar ainda mais a relevância de nosso trabalho, até porque a forma como ele ataca o problema já tem um pouco a ver com
20 Introdução 6 BD s temporais. No entanto, a solução proposta deixa muitos pontos em aberto que podem levar a problemas em projetos de esquemas em estrela. 1.5 Organização O restante do nosso trabalho está estruturado da seguinte forma: No Capítulo 2 discutimos brevemente a evolução dos sistemas de apoio à decisão. Em seguida nos aprofundamos nos termos OLAP e Data Warehousing apresentando definições, características e operações efetuadas nesses ambientes; No Capítulo 3 detalhamos o esquema em estrela, sua estrutura típica, algumas variações dela e as principais operações realizadas sobre este esquema. Por fim apresentamos o problema do histórico de dimensões através de exemplos; O Capítulo 4 contém as principais propostas de alguns autores para resolver o problema. Discutimos também os pontos fracos dessas soluções; No Capítulo 5 apresentamos nossa solução: o MET*(Meta-esquema Temporal em Estrela). Iniciamos este capítulo discutindo os principais conceitos dos bancos de dados temporais. Em seguida apresentamos o MET* informalmente. Logo depois formalizamos a estrutura e a álgebra do MET* e por último apresentamos o MET*SQL (uma extensão do SQL 92 baseada na álgebra proposta) que permitirá a manipulação de dados históricos no esquema; O Capítulo 6 relata a implementação do MET* no SGBD Oracle8 Versão Esta implementação utilizou-se da tecnologia objeto-relacional. Aproveitamos para discutir alguns pontos da implementação desta tecnologia neste SGBD e quais as suas limitações para implementação de data warehouses.
21 Introdução 7 O Capítulo 7 apresenta nossas conclusões e os caminhos que pretendemos seguir no futuro para dar prosseguimento a este trabalho.
22 Capítulo 2 Sistemas de Informação, OLAP e Data Warehousing 2.1 Introdução Como em qualquer atividade humana, o planejamento empresarial consiste primeiramente em se entender fatos presentes e passados, entendimento este que depende de informações sobre tais fatos, sejam elas boas ou más [Souza 99]. As informações necessárias para um bom planejamento diferem em sua essência das informações necessárias à automação de processos produtivos. Aquelas são sumariadas, históricas, analíticas, agregadas e orientadas a assuntos, enquanto que estas são detalhadas, atualizadas e orientadas a aplicações [Inmon 97]. Desta forma, também os Sistemas de Informação (SI s) que as manipulam são essencialmente diferentes. As diferenças expostas acima foram um dos principais fatores para que houvesse evolução dos SI s. Partindo dos Sistemas de Automação (conhecidos como EDP s : Electronic Data Processing) do nível operacional (execução) os SI s atingiram o nível tático (controle) com a implantação dos MIS s (Management Information Systems) e posteriormente chegaram ao nível estratégico (gerência) com o desenvolvimento dos EIS s (Executive Information Systems) e dos DSS s (Decision Support Systems). Em cada nível, mudou substancialmente o foco e a organização das informações disponibilizadas ao usuário final, além das técnicas e da infra-estrutura para cada tipo de SI. Na próxima seção discutiremos rapidamente a evolução bem como as principais características de cada tipo de SI. No restante do capítulo enfocaremos um tipo de
23 Sistemas de Informação, OLAP e Data Warehousing 9 processamento específico para EIS e DSS, processamento OLAP, e as técnicas e infraestrutura por trás dessa tecnologia, consubstanciadas no Data Warehousing. 2.2 Evolução e Contextualização dos SI s A evolução dos SI s está, obviamente, intimamente ligada à evolução das tecnologias de processamento, armazenamento e transmissão de dados. Entretanto essa relação não fecha um círculo em si mesma. O objetivo final dos SI s é melhorar o desempenho de funcionários das empresas através da aplicação de tecnologia de informações [Sprague&Watson 91], ou seja, tornar disponíveis informações corretas, precisas, atualizadas e concisas, na apresentação adequada e no momento ideal [Souza 99]. Portanto, a evolução do SI s deve-se verdadeiramente às crescentes e diferenciadas necessidades de informação para melhor desempenho dos funcionários que dependem desses sistemas, necessidades estas que variam enormemente de acordo com a função do funcionário dentro da organização. Os SI s passaram por três estágios evolutivos distintos. Na seqüência, resumimos os principais aspectos de cada estágio, que sejam conhecidos, de antemão, como Era da Automação, Era do Controle e Era da Produtividade [Souza 99]. No primeiro estágio, chamado de Era da Automação, os SI s tinham por principal objetivo a automação de tarefas rotineiras e de baixa complexidade como cálculos, totalizações, comparações, geração de relatórios, etc. Seu foco estava no armazenamento, processamento e fluxo de dados do nível operacional [Souza 99] [Sprague&Watson 91]. Esses sistemas, classificados como EDP (Electronic Data Processing) inicialmente consistiam de programas escritos em linguagem de alto nível, geralmente COBOL, que manipulavam arquivos mestres armazenados em fita magnética. Mais tarde, com o advento do armazenamento em disco, como forma de resolver os sufocantes problemas do armazenamento em fita magnética [Inmon 97], surgiram novas técnicas de armazenamento e recuperação de dados. Citamos aqui, os sistemas de arquivos, que usavam as técnicas de armazenamento seqüencial e recuperação indexada; os Bancos de Dados Hierárquicos, como o IMS (Information Management System) da IBM; e por fim, os Bancos de Dados em Rede, que seguiam o modelo em rede formulado pelo
24 Sistemas de Informação, OLAP e Data Warehousing 10 CODASYL (Comittee on Development of Applied Symbolic Languages) na década de 70. O principal modo de processamento desses sistemas era batch. Em meados da década de 70, surgiu o processamento on-line. Ao contrário dos sistemas batch, os sistemas on-line refletem imediatamente no BD qualquer processamento feito sobre os dados, provendo também um tempo de resposta imediato ao usuário. Neste estágio surgiram os primeiros SGBD s (Sistemas Gerenciadores de Bancos de Dados) relacionais que implementavam o Modelo Relacional de Codd e utilizavam o conceito de transações serializáveis 1 para o processamento de informações [Korth&Silberschatz 95]. O conceito de Banco de Dados surge como uma única fonte de dados para todo o processamento [Inmon 97], tornando possível separar os detalhes tecnológicos e físicos do processamento e armazenamento dos dados, das regras de negócio. Os dados agora são visualizados sob diferentes níveis (nível físico, nível conceitual e nível de visões) pelos diversos tipos de usuários de SI s [Korth&Silberschatz 95]. No segundo estágio, conhecido como Era do Controle, surgiram os primeiros sistemas voltados para gerência : os MIS s (Management Information Systems, em português, Sistemas de Informações Gerenciais). Inicialmente, o MIS objetivou integrar grupos de SI s para prover informações no nível corporativo, abrangendo todos os níveis decisórios da organização [Sprague&Watson 91]. Este novo enfoque gerencial provocou uma grande mudança na forma como os dados eram vistos pela organização. A informática evoluiu de sua função de automação (execução) para se tornar uma ferramenta de planejamento e controle, uma nova maneira de medir, avaliar, analisar e controlar caminhos a serem seguidos para o alcance de metas e objetivos. O desenvolvimento desses sistemas baseava-se na arquitetura de desenvolvimento espontâneo [Inmon 97] cujo núcleo eram os programas extratores [Inmon 97]. Tais programas selecionavam dados de arquivos ou bancos de dados de acordo com algum critério de seleção e os transportavam para outros arquivos ou 1 Unidades atômicas que agrupam conjuntos de operações sobre dados e que obedecem às propriedades ACID (Atomicidade, Consistência, Isolamento e Durabilidade).
25 Sistemas de Informação, OLAP e Data Warehousing 11 bancos de dados, formando assim bases de dados mais próximas dos aspectos gerenciais particulares de cada ramo do negócio. A arquitetura de desenvolvimento espontâneo tinha como paradigma simplesmente deixar acontecer. Tal falta de controle sobre a construção de novas bases levou à explosão de programas extratores dentro das organizações. [Inmon 97] afirma que era comum uma grande empresa fazer até 45 mil extrações diárias. Sem controle, vários problemas começaram a surgir decorrentes desta arquitetura. Dentre eles o mais grave para a gerência foi certamente a falta de credibilidade dos dados [Inmon 97]. Eram comuns relatórios diferentes sobre o mesmo assunto apresentarem dados discrepantes, o que, ao invés de apoiar decisões, as atrapalhava. Alguns outros problemas apresentados na literatura [Inmon 97] [Souza 99] limitaram o papel do MIS. Entre outros, citamos : o tipo de processamento utilizado, o transacional clássico, que limitava a tarefa de análise gerencial por não possibilitar uma visão realmente administrativa/gerencial dos dados; e a limitação das tecnologias da época (inicio dos anos 80), como interfaces, arquiteturas de hardware, etc. Pelos fatores citados acima, o papel dos MIS s limitou-se a orientar decisões operacionais e mais tarde decisões táticas, o objetivo de fornecer subsídios para decisão gerencial no nível corporativo não foi atingido, até porque esta não é uma tarefa trivial [Souza 99]. Em suma, as informações fornecidas pelos MIS s restringiram-se a relatórios gerenciais pré-definidos (totalizações, comparações, percentuais, etc.) disponibilizados em níveis de departamentos e setores (MIS para marketing, MIS para produção, etc.) [Souza 99] [Sprague&Watson 91]. Seu foco centrou-se nas informações direcionadas a gerentes no nível tático. A continuação do ciclo evolutivo dos SI s se deu com o surgimento de novos sistemas denominados EIS (Executive Information Systems, em português, Sistemas de Informações Executivas) e mais tarde dos DSS (Decision Suport Systems, em português, Sistemas de Apoio à Decisão). Como os próprios nomes dizem, esses sistemas destinam-se ao nível executivo, corporativo, estratégico das empresas. Estamos na Era da Produtividade [Souza 99].
UNIVERSIDADE FEDERAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO COORDENAÇÃO DE PÓS-GRADUAÇÃO EM INFORMÁTICA DISSERTAÇÃO DE MESTRADO "BDRV - Um Sistema Integrador de