HELENA CAROLINA COSTA E LIMA UTILIZAÇÃO DE DATA WAREHOUSE E DATA MINING NO ACOMPANHAMENTO DAS ATIVIDADES DE PESQUISA DO CEULP/ULBRA Palmas - TO 2006 HELENA CAROLINA COSTA E LIMA UTILIZAÇÃO DE DATA WAREHOUSE E DATA MINING NO ACOMPANHAMENTO DAS ATIVIDADES DE PESQUISA DO CEULP/ULBRA “Relatório apresentado como requisito parcial das disciplinas de Trabalho de Conclusão de Curso em Sistemas de Informação I (TCC I) e Trabalho de Conclusão de Curso em Sistemas de Informação II (TCC II) do curso de Sistemas de Informação, orientado pelo Profº. MSc. Fabiano Fagundes”. Palmas - TO 2006 /1 HELENA CAROLINA COSTA E LIMA UTILIZAÇÃO DE DATA WAREHOUSE E DATA MINING NO ACOMPANHAMENTO DAS ATIVIDADES DE PESQUISA DO CEULP/ULBRA “Relatório apresentado como requisito parcial das disciplinas de Trabalho de Conclusão de Curso em Sistemas de Informação I (TCC I) e Trabalho de Conclusão de Curso em Sistemas de Informação II (TCC II) do curso de Sistemas de Informação, orientado pelo Profº. MSc. Fabiano Fagundes”. BANCA EXAMINADORA ________________________________________________________ Prof. M.Sc. Fabiano Fagundes Centro Universitário Luterano de Palmas ________________________________________________________ Prof. M.Sc. Fernando Luiz de Oliveira Centro Universitário Luterano de Palmas ________________________________________________________ Prof. M.Sc. Parcilene Fernandes Brito Centro Universitário Luterano de Palmas Palmas - TO Julho – 2006 III SUMÁRIO 1 INTRODUÇÃO .......................................................................................... 11 2 REVISÃO DE LITERATURA ..................................................................... 12 2.1 Data Warehouse ................................................................................ 12 2.1.1 Banco de Dados Operacionais X Data Warehouse .................... 14 2.1.2 OLAP (On-Line Analytical Processing) ....................................... 16 2.1.3 Características de um DW .......................................................... 17 2.1.4 Componentes de um Data Warehouse....................................... 20 2.1.5 Modelagem Dimensional ............................................................ 22 2.1.5.1 Esquema Estrela ................................................................. 23 2.1.5.2 Tabela de Fatos................................................................... 24 2.1.5.3 Tabela de Dimensão............................................................ 24 2.1.5.4 Metadados ........................................................................... 24 2.1.6 2.2 Extração de Conhecimento em Bases de Dados - KDD .................... 30 2.2.1 3 4 Data Marts .................................................................................. 25 Data Mining................................................................................. 33 2.2.1.1 Técnicas de Data Mining ..................................................... 34 2.2.1.2 Ferramentas de Data Mining ............................................... 38 2.2.1.3 Funções do Data Mining ...................................................... 40 MATERIAIS E MÉTODOS ........................................................................ 43 3.1.1 Metodologia ................................................................................ 43 3.1.2 Materiais ..................................................................................... 44 3.1.3 Local e Período........................................................................... 44 Resultados e Discussões .......................................................................... 45 4.1 Atividades de Pesquisa do Proict....................................................... 45 4.2 Processo de Descoberta de Conhecimento....................................... 45 4.2.1 Conhecimento do Domínio ......................................................... 46 4.2.2 Pré – Processamento ................................................................. 46 4.2.2.1 Modelagem Dimensional ..................................................... 48 4.2.3 Extração de Padrões .................................................................. 54 4.2.4 Pós-Processamento.................................................................... 58 IV 4.2.4.1 Primeira Questão................................................................. 59 4.2.4.2 Segunda Questão................................................................ 60 4.2.4.3 Terceira Questão ................................................................. 61 4.2.4.4 Quarta Questão ................................................................... 63 4.2.4.5 Quinta Questão.................................................................... 65 4.2.4.6 Sexta Questão ..................................................................... 66 4.2.5 Utilização do Conhecimento ....................................................... 67 5 CONSIDERAÇÕES FINAIS ...................................................................... 68 6 REFÊRENCIAS BIBLIOGRÁFICAS.......................................................... 71 V LISTA DE FIGURAS Figura 1 - Elementos básicos do Data Warehouse [KIMBALL, 2002] .............. 20 Figura 2 - Exemplo de um modelo dimensional utilizando o Esquema Estrela [TISSOT, 2004] ................................................................................................ 23 Figura 3 - Data Marts Departamentais ............................................................. 26 Figura 4 - Processos do KDD [FIGUEIRA, 1998] ............................................. 31 Figura 5 - Etapas do processo de um KDD [REZENDE et. al., 2003] .............. 32 Figura 6 – Árvore de Decisão........................................................................... 38 Figura 7 - Modelo Dimensional......................................................................... 48 Figura 8 - Carga da Tabela F_Prod_Proict ...................................................... 55 Figura 9 - Carga da Tabela F_Evento .............................................................. 55 Figura 10 - Apresentação da Ferramenta de Data Mining ............................... 57 Figura 11 – Relação dos Projetos desenvolvidos por Curso............................ 59 Figura 12 – Quantidade de Professores por curso........................................... 60 Figura 13 – Relação de Publicações Jornada e Publicações Externas............ 61 Figura 14 – Projetos Desenvolvidos................................................................. 62 Figura 15 - Porcentagem das Áreas de Conhecimento.................................... 63 Figura 16 – Porcentagem dos Projetos Aprovados nas Jornadas Científicas.. 64 Figura 17 – Relação entre Quantidade de Artigos e Professores .................... 64 Figura 18 – Relação de Carga Horária com Trabalhos Desenvolvidos............ 65 Figura 19 – Média dos Alunos do Proict........................................................... 66 VI LISTA DE TABELAS Tabela 1 – Resumo das diferenças entra BDs Operacionais e DWs. .............. 15 Tabela 2 – Diferenças entra OLTP e OLAP [VAISMAN, 1998] ........................ 16 Tabela 3 – Dados dos Alunos Bolsistas de 2006 ............................................. 47 Tabela 4 – Representação dos Atributos da tabela F_Prod_Proict.................. 49 Tabela 5 – Representação dos Atributos da tabela D_Professores ................. 49 Tabela 6 – Representação dos Atributos da tabela D_Aluno ........................... 50 Tabela 7 – Representação dos Atributos da tabela D_Data ............................ 51 Tabela 8 – Representação dos Atributos da D_Projeto ................................... 51 Tabela 9 – Representação dos Atributos da tabela F_Eventos........................ 52 Tabela 10 – Representação dos Atributos da D_Evento.................................. 52 Tabela 11 – Representação dos Atributos da F_Jornada ................................ 53 Tabela 12 – Representação dos Atributos da D_Artigos.................................. 53 Tabela 13 – Quantidade de Projetos desenvolvidos ........................................ 62 Tabela 14 - Relação de Carga Horária com Trabalhos Desenvolvidos............ 66 VII LISTA DE ABREVIATURAS DW (Data Warehouse) Proict (Projetos de Iniciação Científica) COPPEX (Coordenação de Pesquisa, Pós Graduação e Extensão) CEULP/ULBRA (Centro Universitário Luterano de Palmas) KDD (Knowledge Discovery in Databases) OLTP (On-line Transaction Processing) OLAP (On-line Analytical Processing) DM (Data Mart) VIII RESUMO Tradicionalmente, uma das dificuldades existentes na extração de informações dos dados de um departamento de uma instituição deve-se a falta de integração dos dados relacionados. O mesmo dá-se com os dados pertinentes aos Projetos de Iniciação Científica (Proict), oriundos da COPPEX – Coordenação de Pesquisa, Pós Graduação e Extensão do CEULP/ULBRA, Estes documentos encontram-se armazenados em diversos formatos, tais como: tabelas em Word, planilhas eletrônicas, formulários, entre outros. Dessa forma, a realização de uma análise completa desses dados torna-se uma tarefa complexa. A partir do problema apresentado, este trabalho propõe a estruturação de um modelo de Data Warehouse com o objetivo de organizar e integrar as informações dos documentos que compõem o Proict, e utilizar as técnicas de Data Mining para extrair informações que serão úteis para a COPPEX. Palavras-chave: Data Warehouse, Data Mining, Extração de Conhecimento IX 1 INTRODUÇÃO Devido ao crescimento das organizações e empresas, a quantidade de informação armazenada em bases de dados, formulários, documentos, tem aumentado consideravelmente, sendo que, a maioria das empresas muitas vezes não possui controle de todas as informações que estão disponíveis, uma vez que estas encontram-se espalhadas em diversos ambientes. Com isso, fazem-se necessários e têm-se buscado meios para organizar estas informações propiciando a geração de conhecimento, de tal forma que os dados que anteriormente eram desconsiderados tornem-se fontes de conhecimento. “Estas buscas por conhecimento motivam o desenvolvimento de um ambiente específico, com ferramentas e técnicas de análise de dados que têm por objetivo auxiliar a extração de conhecimento a partir de dados e auxiliar a tomada de decisão“ [GARCIA et al., 2001]. Para a organização destes dados e interação dos mesmos para extração de conhecimento pode-se utilizar o Data Warehouse (DW) que “é um dos processos que realiza a preparação dos dados de um sistema, que dará suporte à tomada de decisão, onde os dados passam por uma série de transformações, entre elas, a limpeza e a verificação de consistência desejada na análise” [KIMBALL, 1998]. Estes dados são organizados e armazenados em repositórios para que seja realizada uma análise destes dados com o objetivo de buscar informações úteis para o ambiente que o DW foi aplicado. Anteriormente muitos dados eram inutilizados devido à falta de organização dos mesmos por estarem dispersos em bases relacionais, ou espalhados em relatórios distintos, com isso deixando de ser fonte de informação. Com a estruturação de um projeto de DW, o resultado é um conjunto de informações úteis, que irá servir de auxílio, segurança e irá possibilitar uma visão abrangente para análise de negócios [MACHADO, 2000]. A quantidade de aplicações das tecnologias de DW tem crescido nos últimos anos, e as alterações constantes nessa arquitetura têm permitido o rápido aumento do volume de dados acessados [INMON et al., 1999]. A partir dos dados armazenados em um DW é possível utilizar ferramentas que irão realizar a análise e interpretação dos dados. Um dos meios utilizados é o Data Mining, “ferramenta que busca automatizar o processo de extração de conhecimento, auxiliar a descoberta de relacionamento entre os dados tendo como objetivo encontrar padrões válidos e úteis aos mesmos” [FAYYAD et al., 1996]. O processo de Data Mining utiliza métodos matemáticos, algoritmos entre outros, para efetuar as análises dos dados, sendo que algumas técnicas que auxiliam a mineração de dados são árvores de decisão, indução de regras, redes neurais, entre outros. O objetivo de se desenvolver um DW e um Data Mining é possibilitar a extração de conhecimento a partir de uma base de dados dimensional, aplicando técnicas que irão auxiliar os administradores e gestores de negócios a analisarem as informações encontradas. Este trabalho visa organizar e implantar um DW juntamente com a utilização de uma ferramenta de Data Mining para os dados de Produção Científica do CEULP/ULBRA, uma vez que estes encontram-se dispersos através de documentos como: relatórios, base de dados e tabelas. O objetivo do trabalho é encontrar informações úteis a serem utilizadas e aplicadas no acompanhamento das Atividades de Pesquisa do CEULP/ULBRA. Para tanto, serão apresentados os passos e etapas necessárias para estruturação do DW, juntamente com os resultados encontrados através da utilização de ferramentas de Data Mining sobre o estudo de caso realizado sobre os dados de Produção Científica do CEULP/ULBRA. XI 11 2 REVISÃO DE LITERATURA Para este trabalho, foram desenvolvidos estudos e pesquisas sobre Data Mining e DW, apresentando os fundamentos práticos e teóricos necessários para atingir o objetivo do trabalho proposto. Para isso, serão apresentadas as etapas e os processos que compõem um Data Mining e um DW. 2.1 Data Warehouse Data Warehousing corresponde ao processo de preparar os dados de uma base operacional de forma que esta se torne uma fonte de informações para realizar suporte à tomada de decisões. Nesse processo, os dados sofrem uma série de transformações, entre elas, a limpeza, a verificação de consistência e a totalização em níveis hierárquicos desejados na análise [KIMBALL, 1998]. A construção de um Data Warehouse exige um alto nível de complexidade sendo necessária a utilização de uma metodologia consistente com um trabalho desenvolvido por pessoas capacitadas e ainda um grande investimento em ferramentas para auxiliar a implantação do ambiente [TISSOT, 2004]. O conceito de Data Warehouse pode ser apresentado como: Um conjunto de dados orientado por assuntos, não volátil, variável com o tempo e integrado, criados para dar suporte à decisão [INMON,1997]. É um processo que aglutina dados de fontes heterogêneas, incluindo dados históricos e dados externos a empresa, usados para atender à necessidade de consultas estruturadas e ad-hoc, relatórios analíticos e de suporte à decisão [HARJINDER,1996]. É uma coleção de técnicas e tecnologias que juntas disponibilizam um enfoque pragmático e sistemático para tratar com o problema do usuário final que precisa acessar informações que estão distribuídas em vários sistemas da organização [BARQUINI, 1996]. Como resultado de desenvolvimento de um DW, obtém-se um conjunto de subsídios, que irão auxiliar o processo de tomada de decisão, permitindo maior abrangência na visão da empresa para análise de negócios e mais segurança nas decisões a serem tomadas [MACHADO, 2000]. A estrutura de um Data Warehouse compreende a utilização de diversas ferramentas que extraem dados de sistemas operacionais da empresa, um banco de dados que o mantém e sistemas que disponibilizam estes dados aos usuários. Algumas vantagens do DW são: a redução do tempo para a aquisição de informações úteis a tomada de decisão, cancelamento de tarefas operacionais, tais como, identificação e pesquisa de dados, confiabilidade das informações e igualdade de informações sobre o desempenho dos negócios [KIMBALL, 1998]. Assim, a partir de experiências de grandes quantidades de dados inutilizados e falta de conhecimento do que são realmente importantes vividas dentro de empresas, [Kimball, 2002], define alguns objetivos importantes para a utilização de um DW: • Fazer com que informações de uma empresa possam ser facilmente acessadas: Permitir fácil acesso aos dados, tanto o conteúdo quanto as ferramentas que serão usadas no DW devem ser de fácil acesso aos usuários, devem retornar os resultados das consultas com menor tempo de espera possível, e os dados devem ser compreensíveis, intuitivos e óbvios. • Apresentar informações de modo confiável e consistente: Os dados que irão compor o DW devem ser confiáveis. Mesmo sendo obtidos de várias fontes diferentes, precisam ser filtrados, submetidos a um teste de qualidade e ser liberados somente quando estiverem aptos a serem utilizados. • Ser adaptável e flexível a mudanças: as mudanças ocorrem a todo instante, não podendo ser evitadas. Por isso o DW deve ser projetado para acompanhar estas mudanças. 13 • Segurança das informações: as informações importantes estão armazenadas no DW, por isso deve-se ter o controle ao acesso às informações confidenciais da empresa. • Funcionar como a base para tomada de decisões: as informações que pertencem ao DW devem ser apropriadas para auxiliar a tomada de decisões, uma vez que serão apresentadas às evidências a partir dos resultados obtidos. Com a implantação de um DW, é possível estruturar um repositório de dados que será uma fonte de informações que irá auxiliar a tomada de decisão, fazendo com que diversos dados isolados sejam transformados em informações úteis ao ambiente que está sendo trabalhado. 2.1.1 Banco de Dados Operacionais X Data Warehouse Os dados armazenados em banco de dados tradicionais que utilizam o modelo de Entidade Relacionamento são empregados em diferentes sistemas de aplicação, como exemplo, portais, empresas que possuem um sistema de gerenciamento, entre outros. Estas bases são denominadas “operacionais”. Já um DW possui um conjunto de dados derivados dos dados operacionais que oferecem suporte à tomada de decisão. Estes dados são referidos como dados "gerenciais", "informacionais" ou "analíticos" [INMON ,1996]. Os bancos de dados operacionais são utilizados para armazenar informações de operações obtidas no dia-a-dia, os funcionários registram e executam operações pré-definidas e suas informações podem mudar de acordo com a necessidade da empresa. À medida que vão sofrendo alterações os dados vão sendo excluídos, pois a estrutura não exige grande capacidade de armazenamento. O DW armazena dados tanto detalhados como resumidos, e são voltados às necessidades da gerência no processo de tomada de decisões, possui um armazenamento de informações históricas de anos e através disso possui uma grande capacidade de processamento e armazenamento. A tabela 1 apresenta algumas diferenças definidas por [INMON, 1997] e [KIMBALL, 1998] existentes entre Bancos de Dados Operacionais e um Data Warehouse: 14 Tabela 1 – Resumo das diferenças entra BDs Operacionais e DWs. Característica Banco de Dados Operacionais Data Warehouses Objetivo Operacional Informativo Tipo de OLTP (On-line Transaction OLAP (On-line Analytical Processamento Processing) Processing) Tipo de Operação Inclusão, Alteração, Exclusão Carga e Consulta Número de Usuários Milhares Centenas Tipo de Usuários Operadores Tomadores de Decisão Interação do Usuário Somente pré-definida Pré-definida e ad-hoc Condições dos Dados Dados Operacionais Dados Analíticos Volume Megabytes – Gigabytes Gigabytes – Terabytes Histórico 60 a 90 dias 5 a 10 anos Granularidade Detalhados Detalhados e Resumidos Estrutura Estática Variável Acesso a registros Dezenas Milhares Atualização Continua (em tempo real) Periódica (em batch) Integridade Transação A cada Atualização Número de Índices Poucos/Simples Muitos/Complexos Intenção dos Índices Localizar um registro Aperfeiçoar Consultas Para auxiliar os usuários nas funções diárias em BD é utilizado o sistema OLTP (On-Line Transaction Processing). Seu objetivo principal é efetuar o máximo de transações possíveis no menor tempo de processamento. Normalmente estes sistemas são pouco flexíveis ao se tratar de quantidade de relatórios e consultas, pois possui limitações impostas por seu modelo de dados. Nos DWs, que possuem uma quantidade de dados maior e suas consultas são de grande complexidade e os requisitos são difíceis de definir, é necessária a utilização de ferramentas que sejam flexíveis, ou seja, auxiliam na organização e extração de dados de um DW. Para a realização desta análise são utilizados os sistemas OLAP (On-Line Analytical Processing), que permitem aos usuários capacitados, que tenham conhecimento sobre as 15 ferramentas, acessarem os dados com maior facilidade, obtendo-se uma visão dimensional dos Dados. As principais diferenças existentes entre os sistemas OLTP e OLAP estão apresentadas na Tabela 2. Tabela 2 – Diferenças entra OLTP e OLAP [VAISMAN, 1998] Características Transacional – OLTP Analítico – OLAP Usuário em Geral Gerentes, analistas de negócio Aplicação do Sistema Operações do dia-a-dia Análises do negócio Interação do usuário Pré-determinado Ad-hoc Leitura/gravação Leitura Transação Consulta Orientado a processos Orientado a assuntos Um registro por vez Vários registros por vez Usuários típicos Características do trabalho Unidade de Trabalho Processamento Atualização A seguir será apresentado o conceito sobre as ferramentas OLAP e suas características e métodos de aplicação. 2.1.2 OLAP (On-Line Analytical Processing) As ferramentas OLAP são aplicadas na fase final de um DW, sendo utilizadas pelos usuários finais que irão através desta ferramenta acessar e extrair dados em uma base dimensional. Assim, auxiliam o processo tomada de decisão ao realizarem a análise dos dados que compõem os DWs e Data Marts. Segundo [INMON et al., 1999], as ferramentas OLAP são definidas como: “uma tecnologia de software que permite aos analistas, gerentes e executivos a obterem os dados de uma forma rápida, consistente e com acesso interativo para uma grande variedade de possíveis visões da informação na empresa. Mais sucintamente, OLAP é um conjunto de funcionalidades que tem, como principal objetivo, facilitar a análise multidimensional“[INMON et al., 1999]. As ferramentas OLAP disponibilizam algumas operações para os usuários acessarem os dados. Segundo [KIMBALL, 2002], as principais são: 16 • Drill Down Esta operação é utilizada para obter resultados mais detalhados, onde os atributos das dimensões atuam como principal ator sobre esta operação. Sendo utilizada para agrupar todos os resultados de uma consulta. Esta operação pode ocorrer de forma automática, onde os atributos são prédefinidos, ou de forma configurável, onde o usuário escolhe qual atributo deseja adicionar a consulta a fim de obter um resultado mais detalhado. • Drill Up Uma operação Drill Down acrescenta atributos das dimensões para obter detalhamento nos resultados; Já operação Drill Up exclui do resultado as colunas de agrupamento, sendo que estas não necessitam ser retiradas na mesma seqüência em que estas foram adicionadas, criando um menor nível de detalhamento nas sumarizações. • Drill Across A operação Drill Across realiza uma alteração na tabela de fatos que será analisada, conservando o mesmo nível de granularidade e detalhamento da consulta. Várias tabelas de fato, que estão relacionadas em uma ordem de processos interligados, possuem a capacidade de compartilhar das mesmas dimensões, sendo assim possível a execução da operação Drill Across entre elas. 2.1.3 Características de um DW As características de um DW, segundo [INMON, 1997], são definidas como: orientado por temas ou assuntos, integração dos dados, variáveis no tempo, não-volátil e granularidade dos dados. Estas características serão descritas nos subitem a seguir: 17 • Orientado por temas As informações que serão armazenadas em um DW são organizadas por temas ou assuntos de acordo com a necessidade da empresa. Os temas que serão armazenados em um ambiente de DW possuem um conjunto de tabelas que estão relacionadas e que possuem informações necessárias para auxiliar a tomada de decisão. • Integração dos Dados A integração dos dados é uma outra característica do ambiente de DW. Os dados que estão sendo implantados das bases operacionais são consolidados de maneira que se obtenha um significado uniforme. Um exemplo clássico é do atributo “sexo”, que pode ser tratado como: “m/f”, ou “1/0”, “masculino/feminino”, ao serem transportados para o DW, estes dados são convertidos para uma única forma. • Variante no Tempo A estrutura dos dados em um DW sempre possui um atributo de tempo, assim, a cada alteração sofrida por um dado, uma nova entrada de dados é gerada, sem que os dados anteriores sejam sobrepostos. Assim, em um DW a data é um componente indispensável sendo considerado como componente chave, pois sua estrutura é projetada através de dimensões de tempo. Ao contrário dos sistemas operacionais, que possuem apenas um sistema de atualização, à medida que novos dados vão sendo inseridos no banco, os antigos são perdidos. Uma das grandes dificuldades encontradas em um ambiente de DW se deve ao fato de que este pode ter dados que não são apenas anuais ou mensais, pois podem existir dados que são diários ou semanais. Os dados devem seguir esta variação de tempo, pois, um dado hoje pode não ter uma informação significativa, porém, no futuro, juntamente com os demais dados que serão inseridos no decorrer do tempo, estes dados podem resultar em informações úteis a serem utilizadas no ambiente em que pertence. 18 • Não-Volátil Uma vez que os dados armazenados em um DW não sofrem atualizações, estes são carregados apenas uma vez podendo a partir disto serem consultados. Já nos sistemas operacionais existem inúmeras transações de atualizações sendo realizadas a todo o momento, com isso é necessário possuir um grande controle para que não haja nenhuma contradição caso uma transação seja interrompida indevidamente. Em um DW não é necessário este controle, uma vez que os dados estão carregados no DW, estes são disponíveis para serem acessados pelos usuários. Mesmo que os dados sejam armazenados diversas vezes ao longo do tempo, o DW, por possuir o atributo do tempo, permite que estes dados sejam inseridos e consultados n-vezes sem que nenhuma informação se perca. • Granularidade A granularidade em um DW refere-se ao nível de detalhes existentes. Em uma consulta, quanto maior o nível de detalhamento dos dados, menor será a granularidade, ou o inverso, quanto menos detalhe na consulta maior será a granularidade. Para [Inmon, 1997], a granularidade é a questão mais importante em um projeto devido ao fato de que ela afeta intensamente o volume de dados existentes no DW, e ainda as consultas que serão realizadas. O balanceamento dos volumes de dados do DW é realizado de acordo com a granularidade de uma consulta. Os dados podem ser divididos em particionamentos que são unidades físicas menores, que têm como objetivo facilitar o trabalho, permitindo flexibilidade no gerenciamento dos dados. Existem diversas formas de divisão dos dados, por exemplo: data, área de pesquisa, área geográfica entre outros. 19 2.1.4 Componentes de um Data Warehouse Segundo [KIMBALL, 2002], os componentes que formam um DW completo são: • Sistemas Operacionais de Origem • Data Staging Area • Área de Apresentação de Dados • Ferramenta de Acesso a Dados A figura 1 apresenta a forma como estes componentes se relacionam. Área de Apresentação de Ferramentas dados de acesso a Sistemas Operacionais de Origem dados Data Staging Área Serviços: Data mart n° 1: Dados Filtrar, combinar, e Extrair padronizar dimensões de conformidade Ferramentas de DIMENSIONAIS e atômicos e de Carregar resumo baseado em NENHUM SERVIÇO um único processo DE CONSULTA AO de negócio consulta Acessar Criadores de relatórios. USUÁRIO. Extrair Barramento do Armazenamento de dados: DW: fatos e tabelas relacionais e decisões em arquivos simples. conformidade Aplicações de análise. Modelagem: previsão, Processamento: Classificação e Extrair processamento seqüencial. especificas. pontuação e Data mart n° 2... Carregar (projetado da mesma forma) Acessar exploração de dados. Figura 1 - Elementos básicos do Data Warehouse [KIMBALL, 2002] A figura 1 apresenta os elementos que compõem um DW, estes elementos serão apresentados nos tópicos a seguir: 20 • Sistemas Operacionais de Origem Sistemas Operacionais de Origem são os sistemas que buscam as transações de dados. As consultas são limitadas sendo realizadas em somente um registro por vez. Os Sistemas Operacionais de Origem são partes externas ao DW, pois não possuem nenhum ou pouco controle sobre o formato e conteúdo dos dados e possuem um pequeno volume de dados históricos. • Data Staging Área A Data Staging Area (Área de Preparo de Dados) é uma área de armazenamento, atua de forma abrangente, desde o acesso a base dos sistemas operacionais de origem até área de apresentação dos dados. Um dos requisitos de preparo dos dados é que estes não estejam disponíveis para uso aos usuários, sem permitir consultas e serviços de apresentação de dados, pois os dados devem ser primeiramente transformados e organizados pelos profissionais responsáveis e somente após esta preparo os dados serão disponibilizados para os usuários finais. Esta área de preparo é formada por dados oriundos das fontes externas ao DW, juntamente com um conjunto de técnicas denominadas por ETL (extract + transformation + load), ou seja, extração, transformação e carga. No processo de extração é realizada a leitura dos dados brutos encontrados nas bases de dados de origem. Estes dados são interpretados das fontes externas e compreendidos, com isto, os dados que serão carregados no DW, são reproduzidos para a área de preparo onde futuramente serão utilizados. Após o processo de extração, inicia-se o processo de transformação onde são executadas algumas operações, como filtragem dos dados, limpeza, conflitos de domínio, tratamento de elementos ausentes, padronização dos dados, correção de escrita. O processo de carga utiliza uma estrutura onde os dados são apresentados através de tabelas dimensionais. Após os dados serem indexados, carregados, agregados apropriadamente e feito à verificação da qualidade, os usuários serão avisados que os novos dados estão publicados. 21 • Área de Apresentação dos Dados A Área de Apresentação de Dados é o ambiente em que os dados são organizados, gravados e disponibilizados aos usuários para realizarem consultas, gerar relatórios e para as demais aplicações de analise. Através das ferramentas de acesso aos dados, estes se tornam acessíveis e visíveis aos usuários. • Ferramentas de Acesso a Dados O último componente de um Data Warehouse são as ferramentas de acesso a dados, que serão utilizadas para consultar os dados na área de apresentação. Uma ferramenta pode ser bem simples para a realização de consultas especificas ou mais sofisticada como uma aplicação de modelagem ou mineração de dados, como por exemplo, a ferramenta Crystal Reports que gera relatórios a partir de um DW ou ainda uma ferramenta de mineração de dados que utiliza algoritmos para realizar as consultas desejadas. 2.1.5 Modelagem Dimensional A maioria dos sistemas de informação que são usados no dia-a-dia de um ambiente é modelada com métodos que retornam respostas rápidas as consultas quando são utilizadas pequenas quantidade de dados. Assim, os sistemas guardam os dados normalizados, sendo o modelo composto basicamente por tabelas e relacionamentos entre si. Em caso de grande volume de dados a serem sumarizados, o modelo relacional normalizado não é totalmente apropriado, neste caso é necessário que os dados sejam transformados para que os dados que se encontram armazenados nestas bases sejam organizados e utilizados de forma útil ao ambiente, isso é possível através do modelo dimensional. A modelagem dimensional é definida por [KIMBALL, 2002], como um processo estruturado desenvolvido para se obter um modelo de dados dimensional. É composto por uma entidade central ou fato, que apresenta a 22 melhora dos negócios do cotidiano de uma organização, e um conjunto de entidades menores ou dimensões, que estão localizadas ao redor da entidade central. 2.1.5.1 Esquema Estrela O Esquema Estrela é formado por um modelo simples, composto por poucas tabelas e relacionamentos bem estruturados [POE, et al., 1998]. Com isso, facilita a compreensão e leitura dos dados, não apenas para os analistas, mas também para os usuários finais que não estão familiarizados com banco de dados. Possibilita o desenvolvimento de um banco de dados que realiza com facilidade consultas complexas, podendo ser feitas de forma eficiente e de modo direto pelo usuário. A figura 2 apresenta um modelo dimensional utilizando o Esquema Estrela. Figura 2 - Exemplo de um modelo dimensional utilizando o Esquema Estrela [TISSOT, 2004] O Esquema Estrela possui esta nomenclatura devido à disposição das tabelas no modelo, que é formado por uma tabela central, denominada a tabela de fatos, e esta está relacionada com várias outras tabelas, chamadas de tabelas de dimensão (os conceitos de tabelas de fatos e tabelas de dimensão são apresentados nas seções seguintes). 23 2.1.5.2 Tabela de Fatos A tabela de Fatos é a principal tabela que compõe um modelo dimensional, armazenam medições (linha em uma tabela de fatos) numéricas ou métricas de desempenho que está relacionada a um assunto ou processo de negócio. Todo registro de uma tabela de fato está ligado a um conjunto de dimensões que indicam a granularidade dos fatos que estão armazenados e definem qual o alvo destas medidas. Quanto menor a granularidade de um fato, maior será o nível de detalhe armazenado [KIMBALL, 2002]. 2.1.5.3 Tabela de Dimensão As tabelas de dimensão sempre acompanham uma tabela de fatos, ela possui os descritores textuais de um processo, as tabelas de dimensão são formadas diversos atributos, que servem de base para definir regras de agrupamento e filtros para consultas em uma tabela de fato. Os atributos nas tabelas de dimensão possuem um papel essencial do DW, por serem a origem de todas as restrições e rótulos de relatórios, os atributos são fundamentais para que o DW seja utilizado e compreendido [KIMBALL, 2002]. Os dados que estão armazenados nas dimensões foram carregados do banco de dados de origem e são utilizados para realização de consultas e abastecimento do DW. 2.1.5.4 Metadados Os metadados são definidos normalmente como “dados sobre dados”, isto é, a abstração dos dados ou mesmo, dados de nível superior que descrevem dados de um nível inferior. Sem a criação de metadados, os dados não possuem significado. Em um DW os metadados apresentam uma importância muito maior que a atribuída no ambiente operativo, é responsável pela integração das bases de dados que constituem o DW [INMON,1997]. “Os metadados 24 funcionam como um guia para mapear a origem do dado, o modo como ele é transformado e o seu conceito dentro do negócio, desde o ambiente operativo até o DW e por, conseguinte, os DM.” [RUBINI, 1997]. De maneira geral, os metadados possuem três camadas: operacionais, onde são definidas as estruturas dos dados que serão mantidos pelo banco operacionais; centrais do DW, onde é mantido uma lista do DW, orientados por assuntos, definindo a maneira em que os dados que foram transformados serão interpretados; e ainda o nível do usuário, que é feito o mapeamento dos metadados do DW, para que a nomenclatura seja familiar e adequada aos usuários finais. 2.1.6 Data Marts O Data Mart (DM) é uma versão simplificada, o qual é criado com base no DW, sendo, normalmente, limitado por contexto de um departamento ou área. Como a criação de um DW é bastante complexa, para criar um equilíbrio nos custos e oferecer retornos em um prazo menor, é possível construir Data Marts, que são pequenos DW departamentais. Data marts são subconjuntos de dados da empresa armazenados fisicamente em mais de um local, geralmente divididos por departamento (data marts "departamentais") [INMON, 1997]. Segundo [ONIEL,1997] existem diversas alternativas para se implementar um Data Mart, sendo que a proposta inicial é aquela em que um DM é desenvolvido a partir de uma DW central, utilizando a arquitetura TopDown que será apresentada na próxima seção. A figura 3 apresenta um exemplo desta situação. 25 Figura 3 - Data Marts Departamentais Na arquitetura apresentada, os usuários possuem acesso direto aos Data Marts. Apenas as análises que necessitam de uma visão global para a empresa serão realizadas no DW. Segundo [INMON, 1997], os DMs se diferem do DW pelas seguintes características: • São personalizados atendem as necessidades de uma área especifica ou de um grupo de usuários; • Trabalham com um volume de dados menor, por atenderem somente uma área; • Possuem um histórico limitado, raramente mantém o mesmo período histórico que possui um DW. Um dos problemas que pode ocorrer com a utilização de um Data Mart é um crescimento desestruturado, colocando em risco o modelo original. É bastante usado e sofre constantes alterações, isto pode acarretar a replicação de informações iguais em lugares diferentes, o que pode dificultar uma integração futura dos Data Marts a um Data Warehouse. A seguir serão apresentados os tipos de arquitetura para o desenvolvimento de um DW. 26 • Arquitetura Top - Down Esta arquitetura é o primeiro tipo introduzido em um ambiente de Data Warehouse. Atualmente é a mais conhecida e considerada como arquitetura padrão. O processo inicia-se com a etapa de extração, transformação e carga dos dados que são derivados do ambiente operacional e das fontes externas para uma área intermediária de preparo dos dados, a partir disto os dados são transferidos para o DW. Com isso o DW possui uma camada de dados detalhados e históricos, somente a partir dos dados extraídos, que os DMs serão carregados com os dados sumarizados. Esta arquitetura garante a relação entre o DW e os DMs, pois são constituídos com base em um subconjunto de dados armazenados pelo DW. As vantagens e desvantagens desta arquitetura segundo [HACKNEY, 1998] serão apresentadas a seguir: VANTAGENS: • Herança de Arquitetura: Todos os DMs que estão relacionados a partir de um DW usam a mesma arquitetura assim como os dados deste DW, possibilitando uma fácil manutenção. • Visão de Empreendimento: O DW possui todos os negócios da empresa, com isso é possível retirar níveis menores de informações a partir dele. • Repositório de Metadados centralizado e simples: O DW fornece um repositório de metadados centralizado para o sistema. • Controle e centralização de regras: Esta arquitetura garante a existência de apenas um conjunto de aplicações para extração, limpeza e integração dos dados. 27 DESVANTAGENS: • Implementação muito longa: Normalmente os DW são desenvolvidos de maneira iterativa, por áreas de assuntos. O tempo gasto em sua implementação é longo, elevando os custos e os riscos podem inibir o desenvolvimento do projeto. • Heranças de cruzamentos funcionais: Devido à complexidade de se realizar as avaliações das informações e consultas que irão garantir a empresa habilidade para resistir e prosperar aos campos de mudanças de competições políticas, organizacionais e geográficas é necessário possuir uma equipe de desenvolvedores e usuários finais altamente habilitados para o desenvolvimento destas consultas, uma vez que as informações extraídas futuramente irão auxiliar na tomada de decisões. • Expectativas Relacionadas ao Ambiente: A grande demora no desenvolvimento do projeto e a falta de retorno podem gerar expectativas aos usuários. • Arquitetura Botton-up A característica central desta arquitetura é a criação de um ambiente de DW incremental, a partir do desenvolvimento de DM independentes. O processo desta arquitetura não necessita de uma área de staging de dados, cada DM possui sua própria área. O processo começa com a extração, transformação e carga dos dados para os DMs, sendo estes modelados através do modelo dimensional, este processo é totalmente independente. No modo de integração esta arquitetura tem uma diferença categórica para a “top-down”, não existe padronização das ferramentas e dos metadados dos DMs. Com isso, a utilização da arquitetura “bottom-up”, mesmo possuindo a implementação e retorno mais rápidos, se torna inviável ao longo do tempo. As vantagens e desvantagens desta arquitetura segundo [HACKNEY, 1998] serão apresentadas a seguir: 28 VANTAGENS • Implementação rápida: O desenvolvimento dos DMs é altamente direcionado, o que permite um desenvolvimento rápido. Um DM pode ser produzido em um período de seis a nove meses. • Retorno Rápido: A arquitetura com base em DM com incremento apresenta rapidamente seu valor, possibilitando uma base para investimentos adicionais, com índice maior de confiança e possuindo um retorno rápido de informações. • Manutenção do Enfoque da Equipe: Uma das grandes dificuldades do desenvolvimento de um DW é a manutenção do mesmo foco por toda a equipe. A criação de DMs incrementais admite que os negócios principais sejam enfocados inicialmente, não havendo gastos no desenvolvimento de áreas que não são eficazes ao problema. • Herança Incremental: A tática de DM incrementais obriga a apresentação de recursos de informação. Com isso, possibilita a equipe crescer e aprender, minimizando os riscos. A avaliação de tecnologias, ferramentas, consultores e vendedores são realizados somente uma vez, ou em caso de existir restrições que impeçam o reaproveitamento. DESVANTAGENS • Perigo de LegaMarts: Uma das maiores ameaças em um DW é o desenvolvimento de DM independentes. A chegada de ferramentas de "drag-and-drop" promoveu a criação de soluções individuais, de acordo com as necessidades da empresa. Assim, estas soluções podem não reconhecer a arquitetura de forma global. Com isso, os DM independentes transformam-se em DM legados, ou LegaMarts, dificultando a viabilização de futuras integrações, se tornando parte do problema e não da solução. 29 • Desafio de Possuir a Visão de Empreendimento: No desenvolvimento dos DM incrementais é preciso manter um rígido controle sobre o negócio como um todo, o que requer um maior trabalho ao retirar e combinar as fontes individuais do que utilizar um DW. • Administrar e Coordenar Múltiplas Equipes e Iniciativas: Com a utilização desta arquitetura, normalmente, utiliza a elaboração de DM em paralelo, pode-se acarretar a uma rigorosa administração na tentativa de coordenar os esforços e recursos das diversas equipes. Diversas abordagens novas buscam basear-se na arquitetura "bottom- up", com o objetivo de aperfeiçoar o processo de criação para garantir a consistência dos dados e metadados e também prover a facilidade de conexão do ambiente. 2.2 Extração de Conhecimento em Bases de Dados - KDD O processo de prospecção de conhecimento também denominado de Knowledge Discovery in Databases – KDD (Extração de Conhecimento em Bases de Dados) é utilizado para identificação e reconhecimento de padrões em um determinado banco de dados, e pode ser definido como “o processo de identificação de padrões válidos, novos, potencialmente úteis e compreensíveis embutidos nos dados” [FAYYAD et al, 1996]. De acordo com [FIGUEIRA, 1998], sua principal característica é a extração não-trivial de informações a partir de uma base de dados de grande porte. Informações são necessariamente implícitas, previamente desconhecidas e potencialmente úteis. Assim, o processo KDD é tido como interdisciplinar, pois envolve diversas áreas de atuação, sendo utilizadas áreas relativas a aprendizado de máquinas, base de dados, matemática, estatística, reconhecimento de padrões, aquisição de conhecimento para sistemas especialistas e visualização 30 de dados [SCHENATZ, 2005]. Esta interdisciplinaridade apresentada no processo de KDD é demonstrada na figura 4. Figura 4 - Processos do KDD [FIGUEIRA, 1998] A figura 4 apresenta o relacionamento do processo de KDD com diversas áreas. Esta interdisciplinaridade é possível através de ferramentas que permitem este relacionamento, possibilitando a extração de conhecimento. • Passos para o processo de KDD Ao estruturar um processo de KDD é necessário seguir alguns passos. Para este trabalho será utilizado o padrão definido por [Weiss e Indurkhya, 1998], que é divido basicamente em cinco passos, descritos a seguir. A figura 5 apresenta os passos de maneira genérica a serem seguidos na estruturação de KDD. 31 Figura 5 - Etapas do processo de um KDD [REZENDE et. al., 2003] 1- Conhecimento do Domínio: Inicialmente é necessário haver o reconhecimento e entendimento do domínio, onde será definida a aplicação. A partir deste estudo são estabelecidos os objetivos do projeto em relação às metas a serem atingidas e com isso é feito o levantamento dos dados que serão utilizados no decorrer do processo do KDD. 2- Pré-Processamento: Com todos os dados devidamente estabelecidos é feito um pré-processamento, onde é realizada uma limpeza nos dados ou data cleaning para que sejam utilizados através dos métodos, algoritmos e ferramentas quando serão definidos os padrões. Segundo [FAYYAD, 1996], este processo de limpeza pode demorar até 80% do tempo necessário para todo o processo, pela dificuldade de integração de bases de dados heterogêneas. 3- Extração de Padrões: Os dados que foram pré-processados devem ser submetidos a uma transformação que irá armazená-lo de forma adequada, buscando simplificar o uso das técnicas de Data Mining. A partir deste passo, é iniciada a fase de Data Mining, que se inicia com a escolha dos 32 algoritmos que serão aplicados nos dados (o que depende diretamente do objetivo do processo de KDD) como segmentação, classificação, árvores de decisão, e outros. O objetivo do Data Mining é localizar os padrões nos dados. Isto é possível através do auxilio nas buscas, que pode ser realizada utilizando ferramentas diversas, que podem ser aplicados ao problema tanto isoladamente quanto em combinação. Através da aplicação destas ferramentas é gerado um conjunto de questões para que seja realizada a filtragem sobre as buscas em um dado e, a partir disto, enviar ao sistema os resultados obtidos. Por fim, o Data Mining gera um relatório com as descobertas feitas para que sejam estudados e interpretados. 4- Pós-Processamento: Estabelecidos os padrões, após a interpretação das informações obtidas inicia-se a etapa de pós-processamento, que tem como foco encontrar o conhecimento para que seja possível utilizá-lo como base para a tomada de decisão. 5- Utilização do Conhecimento: Nesta etapa é realizada a avaliação das saídas que foram fornecidas e serão utilizadas as informações que são realmente úteis para a empresa, que foram enviadas da etapa de pósprocessamento. A seguir serão apresentados alguns conceitos de Data Mining. 2.2.1 Data Mining De maneira geral a quantidade de dados armazenados em bases tem crescido rapidamente, e o homem por si mesmo não possui capacidade de armazenar e interpretar todos estes dados, perdendo muitas vezes informações que poderiam ser interessantes e ainda úteis para auxiliar a tomada de decisão. Os dados são considerados elementos puros que ainda não estão relacionados com outros dados que compõem a base de dados. Normalmente dados são textos, números, mídia, entre outros. Assim um dado pode não servir de embasamento para compreender uma determinada situação uma vez que estes encontram-se isolados em suas tabelas. A informação é gerada a 33 partir de um dado analisado, e uma vez que estes são interpretados obtém-se conhecimento e compreensão sobre uma informação [SCHENATZ, 2005]. Desta forma, uma das formas para que estes dados sejam analisados e interpretados é representado pela utilização de Data Mining, que pode ser definido como sendo: o processo de extrair informação válida, previamente desconhecida e de máxima abrangência a partir de grandes bases de dados, usando-as para auxiliar a tomada de decisões [WITTEN, FRANK, 1999]. Através da aplicação de Data Mining é possível extrair informações de grandes bases de dados, considerando, segundo [HAND et al., 2001], que a Mineração de Dados é a “análise de conjuntos de dados supervisionados, normalmente em grandes quantidades, para encontrar relacionamentos inesperados e resumir os dados em novas formas que são compreensíveis e úteis para o proprietário dos dados”. Assim a mineração de dados pode ser vista de modo a selecionar, explorar e modelar uma grande quantidade de dados, para detectar padrões válidos e relacionamentos em um determinado banco de dados, o que torna possível que a empresa tenha melhor embasamento para a tomada de decisões. Para [WESTPHAL, BLAXTON, 1998], Data Mining é um conjunto de técnicas que envolvem métodos matemáticos, algoritmos e heurísticas para descobrir padrões e regularidades em grandes conjuntos de dados. Segundo [BERRY, LINOFF, 1997] o objetivo do Data Mining é buscar o conhecimento, extraí-lo de maneira implícita, sem que tenha necessidade de conhecer a estrutura das informações do banco de dados onde será aplicado o Data Mining. 2.2.1.1 Técnicas de Data Mining Diversas técnicas de Data Mining foram desenvolvidas com o objetivo de extrair o máximo de conhecimento de um determinado conjunto de dados. As 34 técnicas que são utilizadas são expansões de métodos já conhecidos. As técnicas que serão apresentadas a seguir foram citados por [GROTH,1997]. • Redes Neurais As redes neurais artificiais trabalham de maneira similar às redes neurais biológicas que possibilitam simular procedimentos inteligentes similares ao funcionamento do cérebro humano. Com isto, “uma rede neural compreende um conjunto de nós interligados chamados de neurônios. Cada neurônio conecta-se e envia informação para os demais da camada seguinte, de acordo com pesos e conexões predefinidos. As redes neurais têm capacidade de tratar dados incompletos e distorcidos, produzindo resultados satisfatórios a partir de generalizações” [Almeida, Dumontier, 1996]. Assim uma rede neural artificial tem a capacidade de, através de um treinamento inicial adequado, obter a capacidade de aprender sozinha. Para isso, em cada passo do treinamento é feito uma comparação nos dados com um resultado conhecido, caso seja diferente, a correção é calculada e processada de maneira automática nos nós da rede. Este processo é reproduzido até que a condição de parada seja alcançada. A utilização de redes neurais artificiais possui um processo no qual as informações finais não resultam muitas vezes em uma interpretação clara devido a complexidade e realização do processo de aplicação das redes neurais em um determinado conjunto de dados; este processo pode ser aplicado sem que se compreenda a razão por trás dos resultados obtidos. Com isso a falta de compreensão dificulta a confiança, aceitação e aplicação dos resultados. Dependendo da aplicação que será realizada, uma rede neural pode ocupar muito tempo de aprendizagem [SCHENATZ, 2005]. • Indução de Regras O processo de Indução de Regras ou Rule Induction é utilizado para detectar tendências nos grupos de dados, ou nas regras sobre um determinado dado. Esta técnica é realizada normalmente pela máquina e podendo em alguns casos ser feita pelos usuários. 35 O maior problema em se utilizar as regras é que o Data Mining não faz a seleção das regras por sua importância. Assim o analista é encarregado de criar um manual de análise para todas as regras com o objetivo de identificar quais são realmente importantes para o sistema e para o negócio. [SCHENATZ, 2005]. • Métodos Estatísticos O método estatístico é uma das técnicas de Data Mining mais antiga, sendo parte fundamental de todas as demais tecnologias. Este método necessita da participação do usuário, exigindo profissionais experientes, que irão construir modelos que irão descrever o comportamento de um dado através da aplicação de métodos matemáticos. Após a aplicação os resultados devem ser analisados por um profissional especializado. [SCHENATZ, 2005]. • Algoritmos Genéticos Algoritmos Genéticos é uma técnica de otimização que utiliza diferentes processos, como mutação e seleção natural, com base nos conceitos de evolução. É aplicada a mecânica da genética e da seleção natural para buscar os melhores conjuntos de parâmetros para descrever uma função de previsão. Os algoritmos genéticos empregam mutação, operadores de seleção e cruzamento no desenvolvimento de soluções [SCHENATZ, 2005]. • Árvore de Decisão Segundo [WESTPHAL, BLAXTON, 1999], árvore de decisão divide os dados em subgrupos com base nos valores das variáveis. O resultado é uma hierarquia de declarações do tipo “Se... Então...” que são utilizadas principalmente para classificar dados. É um processo mais rápido que as redes neurais e de fácil compreensão quanto ao seu funcionamento. A árvore de decisão recebe um objeto de entrada ou um conjunto de dados pertencentes a uma situação, e retorna um valor previsto a partir dos 36 dados de entrada. A partir dos dados de entrada, o processo da árvore de decisão executa uma seqüência testes juntamente com as possibilidades de cada nó. Um exemplo citado por [RUSSELL, NORVIG, 2004], apresenta o seguinte problema: “Esperar ou não uma mesa em um restaurante”. Inicialmente é necessário realizar a declaração dos atributos que irão formar domínio. • Alternativa: se existe outro restaurante por perto. • Bar: se o restaurante possui um bar onde possa esperar a liberação de uma mesa. • Sex/Sáb: existem vagas para as sextas e sábados. • Faminto: se estão com fome. • Clientes: pessoas que estão no restaurante (Nenhum, alguns, cheio). • Chovendo: se está chovendo naquele momento. • Reserva: se existe uma reserva feita para aquele dia. • EsperaEstimada: o tempo estimado de espera pelo gerente (de 0 a 10 min, de 10 a 30, 30 a 60 ou > 60). A partir da definição dos atributos, é criada a árvore de decisão. No exemplo apresentado por (Russell), os atributos são processados desde a raiz até as folhas, seguindo as ramificações apropriadas. Seguindo a situação Clientes = Cheio e EsperaEstimada = 0 – 10, então a classificação é positiva, devendo “sim esperar por uma mesa”. A figura 6 apresenta a árvore de decisão criada a partir das informações apresentadas. 37 Clientes? Nenhum Alguns Não Cheio Sim EsperaEstimada? >60 Não 30-60 Alternativa? Não Reserva? Não Sim Bar? Não Sim Sex/Sáb? Não Sim Não Sim Sim Sim Alternativa? Sim Chovendo? Não Sim Não Sim Faminto? Não Sim Não 0-10 10-30 Sim Não Sim Sim Figura 6 - Árvore de Decisão Assim, Lógica Condicional é a forma de expressão das árvores de decisão, onde sua representação busca uma cadeia de questões ocultas na base de dados. O algoritmo de árvore de decisão é formado por dois tipos de atributos, o decisivo, que possui o resultado esperado, e os não-decisivos, que possui valores que irão direcionar a uma decisão. A seguir serão apresentadas algumas ferramentas de aplicação de Data Mining. 2.2.1.2 Ferramentas de Data Mining Atualmente no mercado, são encontradas diversas ferramentas para auxiliar o processo de Data Mining. A seguir estão relacionadas algumas destas ferramentas, para conhecimento [AURÉLIO et al., 1999]: • See5/C5.0 2.03 [RULEQUEST, 2006]: O See5 e o C5.0 são ferramentas de mineração para descoberta de padrões que permitem a definição de categorias, onde são agregadas em classes para que seja realizado o prognóstico. Estas ferramentas foram criadas para efetuar análises em banco de dados com grandes quantidades de dados. Para que a visualização do resultado da mineração realizada seja feita de maneira 38 simples e de fácil interpretação aos analistas, estas ferramentas utilizam técnicas de Árvores de decisão e conjuntos de regras ‘Se...Então’. • ALICE d’ISoft [ISOFT, 2005]: É uma ferramenta para mineração de dados que possui diversos recursos e é de fácil manuseio. Para realizar a exploração dos dados utiliza árvores de decisão, gera relatórios, consultas, análise “What if”, entre outros. • Data Surveyor [SURVEYOR, 2000]: Data Surveyor é uma ferramenta para mineração de dados específica para usuários especializados. É composta por vários algoritmos e fornece suporte para todos os passos do processo de KDD. Possibilita ao usuário a descoberta de conhecimento interativamente, onde os resultados são examinados e direcionados durante o processo de descoberta de conhecimento. • WizRule para Windows [WIZSOFT, 2001 ]: Esta ferramenta apresenta-se como um software amigável para o usuário que possui apenas conhecimentos básicos do uso e aplicação das regras de inferência. Ela possibilita a realização de análise básica dos dados sem que seja necessária muita interferência do usuário. À medida que o grau de conhecimento de seus mecanismos cresce, ela permite que sejam feitos “pequenos ajustes” na análise das informações. • Weka [Witten, I.H. & Frank E., 2000]: A ferramenta Waikato Enviroment for Knowledge Analysis – Weka, foi criada pela Universidade de Waikato na Nova Zelândia [Witten, I.H. & Frank E., 2000]. É uma ferramenta que trabalha diversas técnicas de Data Mining, foi desenvolvida utilizando a linguagem Java, é de fácil instalação e manuseio, e tem sido uma das mais utilizadas no processo de mineração de dados. • SQL Server Data Mining: É um módulo criado para o desenvolvimento de consultas de Data Mining, que acompanha o SQL Server 2005. Esta ferramenta possui diversas facilidades para a aplicação do projeto, tais como interface amigável, fácil conexão com a base de dados, tanto relacional quanto dimensional, utiliza um guia que auxilia o processo de mineração de dados. 39 2.2.1.3 Funções do Data Mining A utilização do Data Mining pode ser diversa, trabalhando de acordo com a necessidade proposta. Para [WESTPHAL, BLAXTON, 1998], cada aplicação de Data Mining tem como base um conjunto de algoritmos que serão utilizados no processo de extração de relações importantes em uma base de dados. Em cada tipo de proposta apresentada em um trabalho, podem ser aplicados diversos algoritmos podendo variar de acordo com a necessidade apresentada para o desenvolvimento do trabalho, elas podem ser definidas por [SCHENATZ, 2005] como sendo: • Classificação É uma técnica que utiliza o mapeamento ou a pré-classificação de um conjunto pré-definido de classes (atributos). Os algoritmos de classificação podem ser Árvores de Decisão ou Redes Neurais. Estes algoritmos classificadores são formados de exemplos que irão determinar um conjunto de parâmetros, que estão codificados em um modelo, para servirem de padrão para que futuramente sejam utilizados nos demais dados. Assim os atributos são classificados de acordo com a necessidade de uma consulta. • Estimativa O algoritmo de Estimativa é a variação do problema de classificação, onde são gerados valores no decorrer das dimensões dos dados. Estes algoritmos de estimativa tratam com resultados contínuos. Assim ao receber um conjunto de dados, usa-se a estimativa para inserir valor para cada variável contínua desconhecida, como por exemplo, altura, saldo, enquanto os de classificação tratam com os resultados discretos, utilizando um, por exemplo, um classificador binário: “verdadeiro” ou “falso”. 40 • Agrupamento por afinidade O algoritmo de Agrupamento por afinidade normalmente é utilizado para análise de mercado, tendo objetivo encontrar tendências no meio de uma grande quantidade de dados. Tais tendências podem auxiliar a compreender e explorar padrões e, se necessário, realizar alterações no mercado de forma a atrair a atenção dos clientes, através de mudanças na empresa, propagandas entre outros. Um outro exemplo em que este processo pode ser utilizado é em um banco de dados universitário, relacionando alunos e disciplinas. Com uma regra do tipo “80% dos alunos matriculados em ‘Programação Comercial I’ também estão matriculados em ‘Teoria Geral da Computação’”, esta regra pode ser utilizada pela coordenação ou secretaria com o intuito de planejar a grade semestral ou disponibilizar recursos como laboratórios com equipamentos necessários ou professores. • Previsão O algoritmo de Previsão é semelhante ao de classificação ou estimativa, porém os registros são classificados através de alguma atitude futura prevista. Em um trabalho de previsão, a única maneira de ratificar a previsão é aguardar para ver o resultado (favorável ou não). • Segmentação É um processo de agrupamento heterogêneo em diversos subgrupos. A diferença entre segmentação e classificação é que esta não depende das classes pré-definidas. Assim segmentação é obtida automaticamente por algoritmos que localizam características semelhantes e dividem o espaço em dimensões que são definidas pelos atributos. As informações são ligadas de acordo com a semelhança existente entre elas. Este processo de segmentação muitas vezes é uma das primeiras etapas realizadas em um processo de Data Mining, uma vez que este localiza grupos de dados relacionados, que serão utilizados para futuras consultas. 41 Com base no que foi apresentado até o momento pode-se concluir que o DW é uma ferramenta de auxílio onde as empresas poderão preparar e analisar informações com o objetivo de melhorar o seu desenvolvimento adquirindo novas possibilidades através das informações apresentadas e que servirão de auxílio a tomada de decisões. 42 3 MATERIAIS E MÉTODOS Neste capítulo serão apresentados os materiais e métodos utilizados para o desenvolvimento deste trabalho, juntamente com as ferramentas, estudo e orientação que foram empregadas para a finalização deste trabalho. 3.1.1 Metodologia Para obter o conhecimento necessário para o desenvolvimento deste trabalho foram verificadas as partes que constituem um Data Warehouse e Data Mining, através de pesquisa na literatura da área. Em seguida, foram verificadas as características de cada uma destas partes, estruturas, componentes e técnicas de aplicação, com o objetivo de obter os conceitos envolvidos nestas para que se possa definir os elementos de um DW e aplicações de Data Mining. Com isso foi possível coletar informações relativas às aplicações do trabalho desenvolvido, sendo possível realizar um bom embasamento teórico para auxiliar a conclusão do trabalho. Os dados foram coletados e estruturados para que fosse possível criar um repositório de dados através de um DW e a partir disto aplicar uma ferramenta de Data Mining para buscar informações úteis à COPPEX. Estes passos e resultados serão apresentados no próximo capítulo – Resultados e Discussões. 3.1.2 Materiais Os assuntos abordados no decorrer do trabalho foram pesquisados em artigos, teses de doutorado e dissertações mestrado, publicações científicas e trabalhos de conclusão de curso, onde todo material bibliográfico pode ser encontrado no capitulo – Referências Bibliográficas. Para a estruturação dos dados foi criada uma base de dados utilizando a Ferramenta SQL Server 2005, a fim de organizar os dados recebidos da COPPEX para que estes sejam carregados em um DW. A ferramenta que será utilizada para criar o repositório de dados do DW será a Crystal Reports, com o objetivo de recuperar as informações sobre o trabalho proposto. Para a aplicação de Data Mining foi empregada a ferramenta Sql Server Data Mining, que permite aplicar diversas técnicas gerando relatórios que irão auxiliar na extração de conhecimento a partir do repositório criado. 3.1.3 Local e Período Este trabalho foi desenvolvido no Centro Universitário Luterano de Palmas, no laboratório do GENORTE, localizado no Complexo de Informática do curso de Sistemas de Informação. A realização deste trabalho ocorreu durante o primeiro semestre de 2006, como requisito da disciplina “Trabalho de Conclusão de Curso em Sistemas e Informação I e II” deste curso. 44 4 Resultados e Discussões Esta seção irá apresentar as etapas realizadas para a construção do DW e a aplicação da ferramenta de Data Mining juntamente com os resultados obtidos. Para a criação do DW a arquitetura utilizada para a sua estruturação foi a Bottom-up esta base foi divida por temas ou assuntos que serão apresentados a seguir. 4.1 Atividades de Pesquisa do Proict O processo das Atividades de Pesquisa é coordenado pela COPPEX (Coordenação de Pesquisa, Pós-Graduação e Extensão). Atualmente este processo é feito de forma manual, os arquivos estão dispersos em formulários e tabelas. Os projetos de Iniciação Cientifica são selecionados uma vez ao ano, onde o aluno, juntamente com um professor orientador, deverá desenvolver um projeto proposto e, ao final do trabalho, deve ser entregue um relatório descrevendo as atividades realizadas. Atualmente, o controle das informações está sendo feito somente com auxílio da ferramenta Microsoft Word, no qual são cadastrados todos os dados referentes aos projetos. 4.2 Processo de Descoberta de Conhecimento A seguir serão apresentados os processos de desenvolvimento de KDD, desde a organização dos dados até a aplicação das ferramentas para extração de conhecimento. Estes processos foram divididos nas seguintes etapas: • Conhecimento do Domínio • Pré – Processamento • Extração de Padrões • Pós - Processamento • Utilização do Conhecimento 4.2.1 Conhecimento do Domínio Os dados utilizados para a criação do DW foram inicialmente os dados relacionados ao Projeto de Iniciação Científica do CEULP/ULBRA, com as informações referentes aos projetos que foram e estão sendo desenvolvidos por alunos voluntários e bolsistas sob a orientação de professores dos cursos de graduação. Estes dados estavam dispostos em relatórios dispersos, tais como, relatórios em tabelas do Microsoft Word. Foram ainda coletados os seguintes dados: acadêmicos, tais como, quantidade de disciplinas cursadas, média geral, entre outros; corpo docente, tais como, carga horária por atividades (Aula, Pesquisa e Extensão); participação em eventos nacionais e internacionais; artigos aprovados da Jornada Científica promovida pela instituição. Uma grande parte dos dados é referente aos anos de 2002 a 2006, porém devido à falta de alguns relatórios, alguns anos não puderam ser preenchidos. A partir dos dados coletados foi feito um trabalho de organização em tabelas para que os mesmos pudessem compor a base do DW. 4.2.2 Pré – Processamento Nesta etapa foi realizado o processo de limpeza, eliminando redundância e dados desnecessários. Primeiramente, os dados que estavam armazenados em tabelas do Microsoft Office Word 2003 foram todos organizados em tabelas do Microsoft Office Excel 2003 para otimizar o trabalho de limpeza. Este processo foi necessário, pois a COPPEX não possui suas informações 46 armazenadas em uma base de dados. Com isso, todo o processo de limpeza, transformação e carga foi realizado de forma manual. A Tabela 3 apresenta um exemplo da lista obtida inicialmente através da COPPEX, contendo alguns dados referentes aos Projetos de Iniciação Científica que posteriormente serão armazenados no DW. Tabela 3 – Dados dos Alunos Bolsistas de 2006 A partir destes relatórios os dados foram separados e organizados de acordo com as necessidades do projeto. Este processo de organização e limpeza demorou aproximadamente 75% do tempo gasto no desenvolvimento do projeto, sendo que este foi concluído em 40 dias e o tempo utilizado para o pré-processamento foram 32 dias. Esta demora se deve pelo fato de que é necessário que todos os dados estejam devidamente integrados para que seja possível efetuar a carga destes dados no DW. A seguir será apresentado o modelo dimensional do DW desenvolvido. 47 4.2.2.1 Modelagem Dimensional A figura 7 apresenta o modelo dimensional criado a partir dos dados recebidos, de acordo com as necessidades apresentadas. O DW foi dividido por temas, sendo eles: Produção Científica (F_Prod_Proict, D_Projeto, D_Aluno, D_Data e D_Professor), que possui as informações referentes aos projetos de Iniciação Científica do CEULP/ULBRA; Participação em Eventos com apoio da Instituição (F_Eventos, D_Data, D_Professor e D_Evento) e ainda a Jornada Científica (F_Jornada, D_Artigo, D_Aluno, D_Professor e D_Data), com as informações sobre os artigos que são submetidos. Os dados referentes à Produção Científica e Eventos foram baseados somente nos alunos e professores que tiveram participação efetiva no Proict. Figura 7 - Modelo Dimensional 48 • Produção Científica A partir da definição dos temas foram geradas três tabelas de fatos, a primeira foi F_Prod_Proict, que possui as informações dos projetos, alunos e professores que compõem o Proict , e que está relacionada com as seguintes dimensões: D_Professor, D_Aluno, D_Projeto e D_Data. A tabela 4 apresenta os atributos que compõem a tabela de Fato “F_Prod_Proict”. Tabela 4 – Representação dos Atributos da tabela F_Prod_Proict F_Prod_Proict Atributos Descrição Seq_data Chave estrangeira da Tabela D_Data. Seq_aluno Chave estrangeira da Tabela D_Aluno. Seq_professor Chave estrangeira da Tabela D_Professor. Seq_projeto Chave estrangeira da Tabela D_Projeto. A tabela D_Professor possui os dados dos professores que fazem parte do Projeto de Iniciação Científica e dos professores que submeteram trabalho nas Jornadas Científicas. Esta tabela também está relacionada com as tabelas de fato F_Eventos em que estão relacionados os professores que participaram de eventos externos e F_Jornada com os professores que tiveram orientações de trabalhos nas Jornadas Científicas. A tabela 5 apresenta os atributos desta tabela de dimensão. Tabela 5 – Representação dos Atributos da tabela D_Professores D_Professor Atributos Descrição Seq_prof Chave primaria da tabela D_Professor. id_prof Identificador dos professores. Nome_Professor Nome do Professor. CH_Aula Carga Horária destinada a Aula. CH_Pesquisa Carga Horária destinada a Pesquisa. 49 CH_Extensão CH_Total CH_Coordenacao id_data Tipo Carga Horária destinada a Extensão. Média da carga horária Total dos professores durante o ano. Carga Horária destinada aos Coordenadores de Curso. Identificador do ano referente aos dados inseridos na base. Informa se o professor é ou professor geral. A tabela D_Aluno possui os dados referentes aos alunos que participam do Proict, sendo divididos em dois tipos: bolsista ou voluntário e ainda armazena as informações dos demais alunos que submeteram trabalhos na Jornada Científica. A tabela 6 apresenta os atributos desta tabela de dimensão. Tabela 6 – Representação dos Atributos da tabela D_Aluno D_Aluno Atributos Descrição seq_aluno Chave primaria da tabela D_Alunos. id_aluno Identificador dos alunos. Nome Nome do Aluno. Tipo Informa se o aluno que está desenvolvendo é bolsista ou voluntário. Identificador do ano referente aos dados id_data inseridos na base. Quantidade de semestres cursados na qnt_sem_cursados Instituição. Disc_cursadas Quantidade de disciplinas já cursadas. Quantidade de disciplinas que estão sendo Disc_cursando cursadas atualmente. Media_geral Média geral das notas dos alunos. Situação Status Indica a situação atual do aluno na Instituição: cursando/formado/evadido. Indica se o aluno é geral ou aluno do Proict. 50 A tabela D_Data possui dados referentes aos anos das informações inseridas nas tabelas da base e esta relacionada as demais tabelas de Fatos. A tabela 7 apresenta os atributos desta tabela de dimensão. Tabela 7 – Representação dos Atributos da tabela D_Data D_Data Atributos Descrição seq_data Chave primaria da tabela D_Data. id_data Identificador da data. Atributo que armazena os anos referentes Ano aos dados da base. A tabela D_Projeto possui dados referentes aos projetos de Iniciação Científica. A tabela 8 apresenta os atributos desta tabela de dimensão. Tabela 8 – Representação dos Atributos da D_Projeto D_Projeto Atributos Descrição seq_projeto Chave primaria da tabela D_Projetos id_projeto Identificador dos projetos Titulo Nome do projeto desenvolvido Área do Conhecimento em que o projeto Área pertence Curso Curso em que o projeto pertence Id_prof Id_aluno id_data Identificador do professor orientador do projeto Identificador do aluno que desenvolveu o projeto Identificador do ano referente aos dados inseridos na base. 51 • Participação em Eventos com apoio da Instituição O segundo tema definido foi o de Eventos, onde foi criada a tabela fato F_Eventos, que possui os relacionamentos com as tabelas de dimensão D_Evento, D_Professor e D_Data. A tabela 9 apresenta os atributos que compõem esta tabela de fato. Tabela 9 – Representação dos Atributos da tabela F_Eventos F_Eventos Atributos Descrição seq_data Chave estrangeira da Tabela D_Data. seq_evento Chave estrangeira da Tabela D_Eventos. seq_professor Chave estrangeira da Tabela D_Professor. A tabela D_Evento possui os dados referentes aos eventos que foram financiados e apoiados pela Instituição para que os professores pudessem apresentar seus trabalhos. Seus atributos estão apresentados na tabela abaixo. Tabela 10 – Representação dos Atributos da D_Evento D_Evento Atributos Descrição seq_evento Chave primaria da tabela D_Evento. id_evento Identificador dos eventos. Evento Nome do evento. Local Cidade onde ocorreu o evento. Identificador do professor que participou do Id_prof id_data Evento. Identificador do ano referente aos dados inseridos na base. As demais tabelas que compõem este tema já foram apresentadas no tema Produção Científica. 52 • Jornada Científica O terceiro tema definido foi o da Jornada Científica, onde serão trabalhados os artigos aprovados. Assim foi definida a tabela F_Jornada que possui relacionamentos com as tabelas de dimensão: D_Aluno, D_Professor, D_Artigo e D_Data. Os atributos que compõem a tabela F_Jornada são: Tabela 11 – Representação dos Atributos da F_Jornada F_Jornada Atributos Descrição Seq_data Chave estrangeira da Tabela D_Data. Seq_autor Chave estrangeira da Tabela D_Aluno. Seq_professor Chave estrangeira da Tabela D_Professor. Seq_artigo Chave estrangeira da Tabela D_Artigos Seq_coautor Chave estrangeira da Tabela D_Artigo A tabela D_Artigo possui os dados referentes aos artigos que foram aprovados na Jornada Cientifica. Os atributos desta dimensão encontram-se relacionados na tabela abaixo: Tabela 12 – Representação dos Atributos da D_Artigos D_Artigo Atributos Descrição seq_artigo Chave primaria da tabela D_Artigo. id_Artigo Identificador dos artigos. Titulo Nome do artigo submetido. id_autor Identificador do aluno autor do trabalho. Identificador do ano referente aos dados id_data inseridos na base. Identificador do professor orientador do id_prof trabalho. id_coautor Identificador do aluno coautor do trabalho. Área de Conhecimento em que o projeto Área pertence. 53 As demais tabelas que compõem este tema foram apresentadas anteriormente, no tema Jornada Científica, sendo elas D_Professor e D_Aluno. 4.2.3 Extração de Padrões O processo de extração foi realizado sobre os dados fazendo com que somente os elementos que seriam utilizados na base do DW fossem selecionados. Este processo foi desenvolvido juntamente com o processo de limpeza uma vez que os dados inutilizados foram excluídos da base. Para estabelecer um padrão no DW, os dados que não foram inseridos, devido à limitação das informações no decorrer dos anos inseridos na base, estabeleceram-se as seguintes normas: para dados do tipo “int” recebeu o valor “-1” e dados do tipo “string” o valor “N/A”. Isso irá auxiliar a análise dos relatórios que serão gerados posteriormente. Sobre o tema Produção Científica foram utilizadas apenas as informações acadêmicas dos alunos, projetos e corpo docente, eliminando as informações pessoais e indiretas. No tema Eventos, somente os dados sobre os eventos financiados e com apoio da Instituição foram utilizados por professores, dados como valores gastos foram eliminados. No tema Jornada, os dados utilizados foram voltados para os alunos e professores que possuíam ou já participaram de projetos de Iniciação Científica, os dados dos demais trabalhos foram mantidos, porém, de maneira geral, visando focar somente em dados relacionados com as Atividades de Pesquisa. Assim, com todos os dados devidamente organizados é possível iniciar o processo de carga na base de dados do DW. Criadas as tabelas e carregadas no Microsoft Office Excel 2003, foi realizada uma importação dos dados para o SQL Server 2005. A partir das tabelas devidamente carregadas, iniciou-se o processo de carga da tabela de fatos. 54 Este processo foi realizado utilizando consultas SQL e os resultados inseridos na tabela de fatos. Para que fosse possível realizar estas consultas dentro das tabelas de dimensão foram inseridos identificadores das demais tabelas relacionadas, facilitando o processo de carga, uma vez que este está sendo realizado sem a utilização de uma ferramenta específica de ETL, uma vez que esta carga não esta sendo realizada a partir de uma base relacional. Como pode-se observar na figura 6, dentro da tabela D_Projeto existem os seguintes atributos: id_data, id_prof e id_aluno; e nas tabelas D_Professor e D_Aluno existe o atributo id_data. A partir destes atributos foi criada uma consulta que irá relacionar estes dados e carregar a tabela fato F_Prod_. A figura 8 apresenta esta consulta. Figura 8 - Carga da Tabela F_Prod_Proict A consulta realizou uma verificação dos dados existentes através dos identificados nas tabelas relacionadas. Assim foi possível, por exemplo, identificar qual professor foi o orientador de um determinado projeto ou ainda verificar o ano em que este trabalho foi desenvolvido. Após a consulta estes dados são selecionados e inseridos da tabela de fato. A consulta realizada para efetuar a carga da tabela fato F_Evento está apresentada na figura 9. Figura 9 - Carga da Tabela F_Evento 55 Como pode-se observar na figura 6, dentro da tabela D_Evento existem os seguintes atributos: id_data, id_prof; e nas tabelas D_Professor e D_Evento existe o atributo id_data. A partir destes atributos foi criada uma consulta que irá relacionar estes dados e realizar o carregamento da tabela de fato F_Eventos através do retorno da consulta efetuada. O mesmo processo foi realizado para o processamento da carga da tabela F_Jornada. Com as tabelas devidamente carregadas inicia-se a etapa Data Mining onde será realizada a aplicação das técnicas, que tem como objetivo encontrar conhecimento para que seja utilizado como base para tomada de decisão. Para que o processamento dos dados seja realizado e se obtenham resultados satisfatórios, foi utilizada para a extração de padrões a técnica de árvore de decisão, em que através de um assistente chamado Data Mining Wizard são definidas as tabelas que irão compor a consulta juntamente com seus relacionamentos. Através do assistente já são definidos os atributos das tabelas que são utilizados para compor a busca. Com a ferramenta SQL Server Data Mining foi possível realizar a conexão com o DW e relacionar as tabelas juntamente com os atributos de forma que retornassem os resultados das consultas criadas. A figura 10 apresenta a interface da ferramenta utilizada. 56 1 2 3 Figura 10 - Apresentação da Ferramenta de Data Mining Os passos iniciais para a criação da aplicação de Data Mining utilizando a ferramenta SQL Data Mining podem ser observados a partir da figura 9, primeiramente é criada a conexão com a base do DW como apresenta a referência 1, esta conexão é definida pelo elemento chamado Data Source, e em seguida são selecionadas as tabelas do DW que irão compor o processo de mineração através do elemento Data Source Views e a partir da conexão estabelecida, a ferramenta gera o modelo dimensional das tabelas de fato e dimensão como apresenta a referência 2. Com a base devidamente conectada inicia-se o processo de busca de informações. A partir da referência 3, são criados as estruturas de mineração que irão realizar estas buscas. Neste processo, são informados: a técnica que será utilizada, as tabelas que farão parte do processo juntamente com os atributos e predicativos criados. Para este trabalho foram criados 5 (cinco) estruturas de mineração que irão realizar a filtragem sobre as buscas em um dado: DProjetos.dmm, 57 DProfessor.dmm, DArtigo.dmm, DEvento.dmm e DAluno.dmm; a partir destas buscas são gerados relatórios com as descobertas feitas para que sejam interpretadas. Estes relatórios serão apresentados no decorrer do trabalho. As questões sugeridas para extrair conhecimento da base de DW foram as seguintes: • Quais cursos têm participado mais ativamente do Proict, levando em consideração a quantidade de professores e projetos desenvolvidos? • Dos professores que obtiveram publicações externas, quantos destes professores tiveram trabalhos publicados nas Jornadas Científicas do CEULP/ULBRA? • Dos anos registrados, qual o ano teve maior quantidade de projetos desenvolvidos, e destes, qual a porcentagem de cada área? • Das Jornadas Científicas qual a porcentagem dos trabalhos publicados que são originados do Proict? • Qual a relação por ano da Carga Horária Aula e Carga Horária Pesquisa dos professores com a quantidade de projetos desenvolvidos, artigos publicados em eventos externos e nas Jornadas Científicas. • Qual o nível dos alunos que desenvolvem projetos do Proict, considerando a quantidade de semestres já cursados, a quantidade de disciplinas cursadas e médias gerais. O resultado destas questões pode propiciar a Coordenação da COPPEX informações que serão úteis para a administração dos projetos e até mesmo quanto aos investimentos feitos, auxiliando assim as tomadas de decisão a serem realizadas. 4.2.4 Pós-Processamento Com a criação das consultas foram gerados relatórios através de gráficos para que posteriormente fossem analisados a fim de que se encontrem informações úteis. A seguir serão apresentados os resultados encontrados a partir das consultas criadas. 58 4.2.4.1 Primeira Questão A primeira consulta realizada envolve os cursos que têm participado mais ativamente do Proict, levando em consideração a quantidade de professores e projetos desenvolvidos. Esta consulta foi realizada obtendo dados das tabelas D_Projetos, D_Professores, D_Data e da tabela de fatos F_Prod_. Projetos Desenvolvidos Porcentagem de Cursos 25% 20% 15% 10% 5% 0% 1 Cursos Administração Biologia Biomedicina Ciencias Contabeis Direito Educacao Fisica Enfermagem Eng. Agricola Eng. Civil Farmacia Fisioterapia Geografia Historia Jornalismo Letras Matematica Pedagogia Psicologia Publicidade Servico Social Sistemas de Informação Turismo Figura 11 - Relação dos Projetos desenvolvidos por Curso A figura 11 apresenta a porcentagem dos projetos desenvolvidos pelos cursos dos anos de 2002 a 2006. A partir do gráfico é possível visualizar quais cursos tiveram maior participação no Proict no decorrer estes anos. Através desta primeira consulta realizada foi verificada a quantidade de professores que fazem parte do corpo docente de cada curso disponível na Instituição. A figura 12 apresenta esta relação. 59 Quantidade por Curso Relação de Professores 45 40 35 30 25 20 15 10 5 0 1 Cursos Administração Biologia Biomedicina Ciencias Contabeis Direito Educacao Fisica Enfermagem Eng. Agricola Eng. Civil Farmacia Fisioterapia Geografia Historia Jornalismo Letras Matematica Pedagogia Psicologia Publicidade Servico Social Sistemas de Informação Turismo Figura 12 - Quantidade de Professores por curso Esta figura apresenta a média da quantidade de professores dos cursos de graduação, assim, comparando os dois gráficos, é possível visualizar que cursos relativamente pequenos, considerando a quantidade de professores, possuem mais projetos desenvolvidos do que cursos que possuem uma grande quantidade de professores e que poderiam estar desenvolvendo vários trabalhos por ano. Como a Instituição investe em Projetos Científicos é um meio de analisar o desempenho destes trabalhos e o interesse de cada curso no desenvolvimento destes projetos. 4.2.4.2 Segunda Questão A segunda consulta realizada envolve os professores que obtiveram publicações externas, e quantos destes professores tiveram trabalhos publicados nas Jornadas Científicas do CEULP/ULBRA. Esta consulta buscou informações das tabelas D_Artigo, D_Professor, D_Data, D_Evento juntamente com as tabelas de fatos F_Eventos e F_Prod_. 60 Ao relacionar os dados dos professores que tiveram participação em 2005 de Eventos externos e participação na Jornada Científica pode-se encontrar o seguinte resultado, conforme apresenta a figura 13. 20 15 10 Publicação Externa 5 Publicação Jornada 0 2005 Publicação Externa Publicação Jornada Figura 13 - Relação de Publicações Jornada e Publicações Externas Dos 20 (vinte) professores que tiveram participação em Eventos externos, apenas 6 (seis) destes professores tiveram participação com publicações na Jornada Científica de 2005. A consulta foi realizada somente com dados do ano de 2005, devido à falta de armazenamento dos dados das Jornadas dos anos anteriores e a relação de participações em Eventos externos de 2006. Com esta informação cabe a Instituição avaliar o incentivo ou a falta dele em relação a alguns professores que trabalham com produção científica, uma vez que o CEULP oferece eventos para a apresentação de projetos. 4.2.4.3 Terceira Questão A terceira consulta busca a seguinte informação, dos anos registrados qual o ano teve maior quantidade de projetos desenvolvidos, e destes qual a porcentagem de cada área? Para a realização desta consulta foi aplicado o processo de mineração sobre as tabelas D_Data, D_Projetos, juntamente com 61 a tabela de fato F_Prod_. O resultado encontrado está representado na figura 14. Projetos Desenvolvidos 60 50 2002 40 2003 30 2004 20 2005 10 2006 0 Agrárias Biológicas Humanas e da e Sociais Saúde Aplicadas Exatas e da Terra Total Projetos Figura 14 - Projetos Desenvolvidos Através do gráfico representado pela figura 14, é possível verificar que o ano que obteve mais projetos desenvolvidos foi o de 2005, levando em consideração que os projetos de 2006 se encontram ainda em desenvolvimento. Para melhor entendimento segue a tabela com a quantidade de projetos de cada área de conhecimento no decorrer dos anos de 2002 a 2006. Tabela 13 – Quantidade de Projetos desenvolvidos Ano Agrárias Biológicas e da Saúde 2002 2003 2004 2005 2006 13 6 7 10 8 5 10 10 10 12 Humanas e Sociais Aplicadas 15 19 4 16 6 Exatas e da Terra Total de Projetos 14 7 11 16 12 47 42 32 52 38 A partir da tabela apresentada, foi realizado o cálculo das porcentagens de cada área. A ferramenta relaciona os resultados semelhantes por área e calcula a porcentagem. O resultado pode ser observado na figura a seguir. 62 Porcentagem das Áreas de Conhecimento 30% 25% 20% 15% 10% 5% 0% Agrárias Biológicas Humanas e Exatas e e da Saúde Sociais da Terra Aplicadas Figura 15 - Porcentagem das Áreas de Conhecimento Com isso, conclui-se que as áreas que tiveram maior participação no Projeto de Produção Científica foram às áreas de Humanas e Sociais Aplicadas e Exatas da Terra, uma vez que são as áreas desenvolvem a maior parte dos projetos de Iniciação Científica. 4.2.4.4 Quarta Questão A quarta questão proposta tem como objetivo buscar informações a partir das Jornadas Cientificas, quais artigos foram originados do Proict. Para este processo a mineração buscou as informações nas tabelas D_Projetos, D_Alunos, D_Data, D_Artigos, juntamente com a tabela de fatos F_Jornada. Como resultados obtiveram-se as seguintes informações apresentadas nas figuras abaixo. 63 Jornada Científica - 2005 Jornada Científica - 2006 32% 45% 68% Proict 55% Geral Proict Geral Figura 16 - Porcentagem dos Projetos Aprovados nas Jornadas Científicas Pode-se observar através da figura 16 que a participação dos projetos desenvolvidos pelo Proict nas Jornadas Científicas tem sido pequena diante das demais publicações. Do total de publicações no ano de 2005 apenas 32% eram trabalhos originados do Proict, em 2006 ouve um pequeno aumento chegando a 45% dos trabalhos submetidos. A partir da consulta realizada que buscou encontrar a porcentagem dos artigos originados do Proict, foi possível realizar uma outra consulta onde será realizada uma comparação entre a quantidade de artigos aprovados do Proict em relação à quantidade de professores do Proict e a quantidade de artigos gerais em relação à quantidade de professores Gerais. Com isso foi realizado uma consulta sobre as tabelas D_Artigo, D_Professor e F_Jornada somando os resultados dos anos de 2005 e 2006, assim o resultado encontrado está representado a figura abaixo. Figura 17- Relação entre Quantidade de Artigos e Professores Como apresenta a figura 17, a participação dos professores gerais tem sido mais evidente do que os professores do Proict, uma vez que estes obtiveram orientações em 59% dos trabalhos aprovados. E mesmo tendo o 64 número de professores maior, a quantidade de artigos aprovados originados do Proict é bem menor do que os aprovados com orientação dos professores gerais, obtendo um total de 41% dos artigos aprovados do Proict. Este é um dado importante a ser observado, devido ao incentivo dado pela Instituição ao trabalho Científico, visto que este não tem sido bem explorado pelos alunos e professores. 4.2.4.5 Quinta Questão A questão abordada a seguir é qual a relação da carga horária aula e carga horária de pesquisa dos professores do Proict, com a quantidade de projetos desenvolvidos, artigos publicados nas Jornadas Científicas e participação com publicações em Eventos externos. Esta relação está representada na figura abaixo. 60 50 40 30 20 Ano 2005 Ano 2006 10 0 s a os da ula na ui s rn a l vi d _A ter sq o o h x e v J C E _P lic . sen lic . Ch ub De ub P . P j o Pr Figura 18 - Relação de Carga Horária com Trabalhos Desenvolvidos A tabela 14 apresenta os valores referentes a cada informação existente na figura 18. 65 Tabela 14 - Relação de Carga Horária com Trabalhos Desenvolvidos Ano Ch_Pesq Ch_Aula 2005 2006 5,45 4,58 21,9 20,5 Como apresenta a Projetos Desenvolvidos 51 38 tabela 14, Publicações Externas 20 0 a quantidade Publicações Jornada 50 60 de horas para desenvolvimento de projetos para os professores é mínima em relação há horas aula, porém a quantidade de projetos orientados por estes professores tem sido grande mesmo não tendo muito apoio para o desenvolvimento dos mesmos. As participações em eventos externos tem sido pequena em relação às participações em Jornadas, lembrando que estes dados são dos professores, dos projetos, eventos e publicações gerais relacionados ao Proict. 4.2.4.6 Sexta Questão A última questão a ser apresentada está relacionada com o nível dos alunos que desenvolvem projetos do Proict, considerando a quantidade de semestres cursados, quantidade de disciplinas cursadas e média geral. Para a obtenção destes resultados foi realizado o processo de mineração nas tabelas D_Aluno, D_Data juntamente com a tabela de fatos F_Prod_. Os resultados obtidos estão representados na figura a seguir. Média dos Alunos do Proict 40 35 30 25 Ano 2004 20 Ano 2005 15 Ano 2006 10 5 0 Qt. Sem. Cursados Qt. Disc. Cursadas Média_Notas Figura 19 - Média dos Alunos do Proict 66 Como apresenta o gráfico da figura 19, os alunos que tiveram um melhor desempenho em suas atividades acadêmicas foram os alunos que desenvolveram projetos no ano de 2005. Levando em consideração a quantidade de disciplinas cursadas, a grande maioria dos alunos apresentaram um atraso considerável sobre o tempo de graduação, pois a média dos cursos do é de 4 (quatro) anos, assim, uma das considerações observadas nos resultados obtidos é que grande parte dos alunos concluem seu curso além do prazo de graduação. A respeito da média de notas, os alunos pesquisados no decorrer dos anos possuem a média geral de notas semelhantes. 4.2.5 Utilização do Conhecimento A partir das informações encontradas e apresentadas nas seções anteriores, o setor responsável poderá utilizar estas informações para auxiliar o processo de tomada de decisões, observando os sucessos e falhas dos projetos, e buscando melhorar as bases para que seja possível desenvolver e envolver alunos e professores que buscam conhecimento através da Área Científica. 67 5 CONSIDERAÇÕES FINAIS Para o desenvolvimento deste trabalho foram realizadas pesquisas e estudos sobre DW, Data Mining e Extração de Conhecimento, a fim de proporcionar a compreensão sobre conceitos, estrutura e funcionamento de todo o processo de Extração de Conhecimento a partir da criação do DW e aplicação de Data Mining, assim como realizar as aplicações propostas para este trabalho. Com o estudo realizado foi possível definir os dados que seriam utilizados para estruturar a base dimensional, a partir disto foi realizado uma busca sobre diversas ferramentas de Data Mining para realizar a aplicação de técnicas sobre o DW a fim de extrair informações úteis, e ainda criar um referencial teórico como base para a aplicação realizada. A partir da identificação dos dados, foi definida uma base dimensional contendo tabelas de fatos e dimensões que juntamente com seus relacionamentos formaram o DW e proporcionaram a realização de consultas e obtenção de informações importantes a serem observadas pela COPPEX a partir da ferramenta de Data Mining. De acordo com a teoria estudada, os processos de limpeza, transformação e carga são mais demorados de todo o projeto devido sua importância, pois os dados devem estar organizados e limpos para que não haja falhas durante o processo de extração e carga. Durante o processo de desenvolvimento foi possível confirmar que tal informação é verdadeira. A grande dificuldade encontrada para o desenvolvimento do trabalho foi a estruturação dos dados de maneira que satisfizessem as necessidades do projeto, uma vez que estes dados encontravam-se dispersos, não apenas no setor responsável, como também foi necessário utilizar dados de outros setores, tais como informações acadêmicas e corpo docente. Tanto este processo, quanto a organização dos dados, incluindo limpeza, transformação e carga na base dimensional foram realizadas manualmente. Com o DW devidamente carregado foi possível realizar o processo de Data Mining e obter informações úteis a serem analisadas, e a partir disto buscar melhorar o desempenho dos projetos desenvolvidos, o incentivo aos professores e alunos a estarem participando ativamente das atividades de pesquisas oferecidas pela Instituição. Ao decorrer do projeto observou-se que devido à falta de uma base de dados que armazenasse os dados referentes aos projetos e assuntos relacionados diretamente a eles, limitou as informações que poderiam ser obtidas, algumas destas informações foram selecionadas para um melhor entendimento: • Os relatórios referentes as participações de alunos e professores em eventos apoiados pela Instituição não armazenam as informações dos períodos de cada viagem. Se estas informações existissem seria possível verificar em qual época do ano são realizadas as maiores petições de apoio. Esta informação seria relevante, pois permitiria a Instituição se organizar para se preparar para estas épocas de maior busca de apoio. • Ainda nos relatórios de participações em eventos nacionais e internacionais poderia existir informações de quais artigos ou projetos foram apresentados juntamente com os professores e alunos que os desenvolveram. Com estes dados seria possível obter informações mais detalhadas sobre os trabalhos que vem sendo desenvolvidos na Instituição e o reconhecimento dos mesmos em eventos externos. • Nos projetos de Iniciação Científica, poderiam existir informações sobre quais destes projetos obtiveram conclusão total, parcial ou que não foram concluídos. Com estas informações é possível, por exemplo, averiguar o desempenho do orientador do trabalho que possui uma quantidade de horas destinadas à pesquisa, e buscar ter conhecimento sobre os motivos pelos quais os projetos não foram desenvolvidos de maneira satisfatória. Ainda com estes dados é possível verificar a permanência do mesmo projeto por mais de 1 (um) ano, limitando assim que projetos novos sejam desenvolvidos. Outra possibilidade seria realizar pesquisas sobre o perfil dos alunos que desenvolvem projetos científicos, buscando obter dados que 69 possam direcionar estes alunos as áreas de seu interesse, verificando as tendências para o desenvolvimento de projetos em outras áreas. Com esta informação é possível prever o resultado final do trabalho. Para um aluno que possui interesse em um determinado assunto são grandes as probabilidades de que este projeto alcançará êxito na sua conclusão. Porém, os alunos que se interessam nos projetos científicos apenas pela bolsa de estudos que esta proporciona, ou que não realizam projetos de seu interesse, poucos destes trabalhos chegam a ser concluídos, e dos que são finalizados a minoria terá alcançado um resultado satisfatório. Estas são algumas questões observadas no decorrer do trabalho, podendo ser trabalhadas posteriormente. Assim com a utilização de criação de um DW e aplicação de uma ferramenta de Data Mining, obteve-se informações que foram apresentadas no decorrer do trabalho, que irão auxiliar no desenvolvimento de normas e aplicações dos projetos científicos criados na Instituição, buscando sempre melhorar a qualidade de ensino e incentivo a futuros pesquisadores. 70 6 REFÊRENCIAS BIBLIOGRÁFICAS [ALMEIDA, DUMONTIER, 1996] ALMEIDA, Fernando C. de; DUMONTIER, Pascal. O uso de redes neurais em avaliação de riscos de inadimplência. Revista de Administração, São Paulo, v. 31, n. 1, p. 52-63, jan./mar. 1996. [AURÉLIO et al., 1999] AURÉLIO, Marco; VELLASCO, Marley; LOPES, Carlos. Descoberta de conhecimento e mineração de dados. ICA, PUC/RIO, Rio de Janeiro, 1999. Disponível em: <http://www.ica.ele.puc- rio.br/cursos/download/apostila.zip>. Acesso em: 15/05/2006. [ÁVILA, 1998] ÁVILA, Bráulio Coelho. Data Mining. VI Escola de Informática da SBC – Região Sul. Blumenau, 1998. p. 87–106. [BARQUINI, 1996] BARQUINI, Ramon - Planning and designing the Warehouse, Prentice-Hall, New Jersey: 1996, 311 p. [BERRY, LINOFF, 1997] BERRY, Michael J.A., LINOFF, Gordon. Data Mining techniques: for marketing, sales, and customer support. J. Wiley & Sons Inc, New York: 1997. 454 p. [FAYYAD et al, 1996] FAYYAD, Usama; PIATETSKI-SHAPIRO, Gregory; SMYTH, Padhraic. The KDD Process for Extracting Useful Knowledge from Volumes of Data. In: Communications of the ACM, pp.27-34, Nov.1996. [FIGUEIRA, 1998] FIGUEIRA, Rafael Medeiros Andrade. Miner: um software de inferência de dependências funcionais. Trabalho de Conclusão de Curso 72 – Instituto de Matemática, Universidade Federal do Rio de Janeiro. Rio de Janeiro, 1998. [GARCIA et al., 2001] GARCIA, Ana ; XÉXEO, Geraldo; PASSOS, L. Carlos; REIS, Francisco; LOBO, Nelson, RABELO, Lísia; JUNIOR, A. Rabelo. FBCDataWare: um Data Warehouse para cardiologia. In: 4º SIMPÓSIO ARGENTINO DE INFORMÁTICA E SAÚDE – SADIO, 10., 2001. Disponível em: <http://www.sis.org.ar/tlibres/B/b_10.PDF>. Acesso em: 20/06/2006. [GROTH, 1997] GROTH, Robert. Data mining: a hands-on approach for business professionals. Prentice Hall, New Jersey: 1997. 264p. [HACKNEY, 1998] HACKNEY, Douglas. Data Warehouse Delivery: Who Are You? – Part I. DM Review Magazine, Vol. 8, No 2, Fevereiro, 1998. [HAND et al., 2001] HAND, David; MANNILA, Heikki; SMYTH, Padhraic; Principles of Data Mining, August 2001. [HARJINDER, 1996] HARJINDER, G. ; RAO, P. C. – The Officil Guide to Data Warehousing, Que Corporation, 1996. [INMON ,1996] INMON, W. H. – Building the Data Warehouse, John Wiley & Sons Inc., New York, 1996. [INMON,1997] INMON, W. H. & Richard D. Hackathorn – Como usar o Data Warehouse, Infobook, 2 ed., Rio de Janeiro, 1997. [INMON et al., 1999] INMON, W.H, WELCH, J. D., GLASSEY, K. L. Gerenciando Data Warehouse. Makron Books, São Paulo: 1999. 375p. [KIMBALL, 1996] KIMBALL, Ralph. Drilling Down, Up, and Across: Understanding the vocabulary of navigating dimensions. DBMS OnLine. 1996. Disponível em: <http://www.dbmsmag.com/9603d05.html>. Acesso em: 20/06/ 2006. 72 73 [KIMBALL, 1998] KIMBALL, Ralph; ROSS, Margy. The Data Warehouse Lifecycle Toolkit: Expert Methods For Designing, Developing and Deploying Data Warehouses. John Wiley & Sons Inc., New York: 1998. [KIMBALL, 2002] KIMBALL, Ralph; ROSS, Margy. The Data Warehouse Toolkit: The complete guide to dimensional modeling. 2. ed. USA: Wiley, 2002. [MACHADO, 2000] MACHADO, F. M. R. Projeto de Data Warehouse: uma visão multidimensional. São Paulo: Érica, 2000. [ONEIL, 1997] ONEIL, B. – Oracle Data Warehousing. Indianapolis, Sams Publishing, 1997. [POE, et al., 1998] POE, Vidette, KLAUER, Patricia, BROBST, Stephen. Building a Data Warehouse for Decision Support. New Jersey. PrenticeHall, Inc, 1998. 285 p. [RESENDE et al., 2003] REZENDE, S. O., PUGLIESI, J. B., MELANDA, E. A., PAULA, M. F. Sistemas Inteligentes – Fundamentos e Aplicações In S. O. Rezende (Ed.), Editora Manole, pp. 307–335, 2003. [RUBINI, 1997] RUBINI, Eduardo. Definindo Modelos "Star Schema" para Projetos de Data Warehouse. In: Developers & Object Forum'97, 1997. [RUSSELL, NORVIG, 2004] RUSSELL, Stuart, NORVIG, Peter. Inteligência Artificial. Editora Campos, 2 Edição, pp 633 – 643, 2004. [SCHENATZ, 2005] SCHENATZ, B. Nardelli, Utilização de Data Mining em um sistema de informação gerencial para o diagnóstico da formação de Professores da Graduação. Dissertação (Mestrado em Engenharia da Produção) 2005. Programa de Pós-Graduação em Engenharia de Produção da Universidade Federal de Santa Catarina. Universidade Federal de Santa Catarina, Santa Catarina, Abril /2005. 73 74 [THOMÉ, 2002 ] THOMÉ, A. C. Gay. Redes Neurais – Uma Ferramenta para KDD e Data Mining. Universidade Federal do Rio de Janeiro, 2002. [TISSOT , 2004] TISSOT, H. Correa - Proposta para documentação de requisitos em Projetos de Data Warehouse. Dissertação (Mestrado em Engenharia da Produção) 2004. Programa de Pós-Graduação em Engenharia de Produção da Universidade Federal de Santa Catarina. Universidade Federal de Santa Catarina, Santa Catarina, 12/11/2004. [VAISMAN, 1998] VAISMAN, Alejandro A. Olap, Data Warehousing, and Materialized Views: a Survey. Buenos Aires, 1998. [VIANA , 2004] VIANA, R. Mineração de Dados Introdução e Aplicações. SQL Magazine, Ed.10, Ano1, 2004 . [WEISS, INDURKHYA, 1998] WEISS, S. M.; INDURKHYA, N.. Predictive Data Mining: A Practical Guide. Morgan Kaufmann Publishers, Inc., San Francisco, CA. [WESTPHAL, BLAXTON, 1998] WESTPHAL, Christopher; BLAXTON, Teresa. Data mining solutions. John Wiley & Sons Inc, Canadá :1998. [WITTEN, FRANK, 1999] WITTEN, I. H. ; FRANK, E. . Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations. Morgan Kaufmann Publishers, Inc., San Francisco, CA, 1999. 74