Aplicação da Medida TfIdf em Bancos de Dados Relacionais para Ordenação de Consultas por Termos



Documentos relacionados
Organizaçãoe Recuperação de Informação GSI521. Prof. Rodrigo Sanches Miani FACOM/UFU

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro.

Modelos. Comunicação com clientes

Introdução à Banco de Dados. Definição

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]

Estruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa

Microsoft Access XP Módulo Um

Universidade Federal de Alfenas

Organizaçãoe Recuperaçãode Informação GSI521. Prof. Dr. Rodrigo Sanches Miani FACOM/UFU

Disciplina: Unidade III: Prof.: Período:

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

SISTEMA GERENCIADOR DE BANCO DE DADOS

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. DCC-IME-USP

Persistência e Banco de Dados em Jogos Digitais

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente

ARQUITETURA DE UM SISTEMA SPATIO-TEXTUAL. PALAVRAS-CHAVE: banco de dados espaciais, busca spatio-textual. aplicativo.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Disciplina de Banco de Dados Introdução

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

GBD PROF. ANDREZA S. AREÃO

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Arquitetura de Banco de Dados

Banco de Dados I. Introdução. Fabricio Breve

Desenvolvimento de um Simulador de Gerenciamento de Memória

3 SCS: Sistema de Componentes de Software

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Módulo 4: Gerenciamento de Dados

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

DATA WAREHOUSE. Introdução

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

GEE051 - Banco de Dados (BD) Plano de Curso. Ilmério Reis da Silva ilmerio@facom.ufu.br UFU/FACOM /2

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos

Sistemas Operacionais

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

Revisão de Banco de Dados

Resultados Experimentais

Documento de Requisitos Sistema WEB GEDAI

Sistemas Operacionais

1

Pontos de Função. André Chastel Lima Andréia Ferreira Pinto Diego Souza Campos. Engenharia de Software Mestrado Ciência da Computação - UFMS

Jonathan J. Campos, Jefferson de Faria, William de O. Sant Ana

COMO USAR DOIS MONITORES NO WINDOWS 8

UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO (Bacharelado)

ADM041 / EPR806 Sistemas de Informação

ISO/IEC 12207: Gerência de Configuração

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Organização de Arquivos

UD 4: Sistema de Gerenciamento de Banco de Dados

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Faculdade Lourenço Filho - ENADE

Organizaçãoe Recuperaçãode Informação GSI521. Prof. Dr. Rodrigo Sanches Miani FACOM/UFU

Comparativo de desempenho do Pervasive PSQL v11

A Grande Importância da Mineração de Dados nas Organizações

7.Conclusão e Trabalhos Futuros

O Software Face Match

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Orientação a Objetos

Tarefa Orientada 16 Vistas

HIBERNATE EM APLICAÇÃO JAVA WEB

4 Implementação e Resultados Experimentais

UNIVERSIDADE ESTADUAL DO CENTRO-OESTE UNICENTRO CURSO DE ESPECIALIZAÇÃO EM MÍDIAS EM EDUCAÇÃO

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

A PÁGINA DISCIPLINAR DE MATEMÁTICA DO PORTAL DIA A DIA EDUCAÇÃO

INTRODUÇÃO. Diferente de Bando de Dados

textos documentos semi-estruturado

Modelos de Dados e Arquitetura de um SGBD. Introdução 1º Bimestre Prof. Patrícia Lucas

Sistemas Operacionais Arquivos. Carlos Ferraz Jorge Cavalcanti Fonsêca

Prof. Daniela Barreiro Claro

Roteiro 2 Conceitos Gerais

Análise de Ponto de Função

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Desenvolvendo Websites com PHP

É importante que nos atenhamos a alguns aspectos importantes sobre banco de dados:

Automação de Locais Distantes

Introdução. 1. Introdução

Sistemas de Informação I

4 Segmentação Algoritmo proposto

PLANO DE ENSINO. PRÉ-REQUISITO: Modelagem e Programação Orientada a Objetos. PROFESSOR RESPONSÁVEL : Josino Rodrigues Neto

COMPARAÇÃO DOS MÉTODOS DE SEGMENTAÇÃO DE IMAGENS OTSU, KMEANS E CRESCIMENTO DE REGIÕES NA SEGMENTAÇÃO DE PLACAS AUTOMOTIVAS

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

BANCO DE DADOS 1 AULA 1. estrutura do curso e conceitos fundamentais. Professor Luciano Roberto Rocha. contato@lrocha.

Universidade Paulista

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

AULA 1 Iniciando o uso do TerraView

Transcrição:

Aplicação da Medida TfIdf em Bancos de Dados Relacionais para Ordenação de Consultas por Termos Daniel Pereira Lima 1, Naziane Alves Pinto 2, Carla Oran Fonseca de Souza 3, Francisca Sancha Azevedo da Silva 4 Centro Universitário do Norte UNINORTE Manaus AM Brazil 1 daan.lima@gmail.com 2 nazyane_alves@hotmail.com, 3 carla.oran@gmail.com, 4 fcasancha@gmail.com Abstract. In Relational Database (RDB), indexes are structures used for improving the performance of data search. In the Information Retrieval (IR) area, there are also structures of search optimization, known as inverted indexes. Besides search optimization, another source in IR is the ordination of result according to their relevance. A way of calculating this relevance is using Tfidf measure. The goal of this paper is to apply the concepts of inverted index and the Tfidf measure in RDB, with the objective of allowing the optimization and ordination of searches for key-words. Resumo. Em Bancos de Dados Relacionais (BDR), os índices são estruturas utilizadas para melhorar a performance de busca de dados. Na área de Recuperação de Informação (RI) também existem estruturas de otimização de busca, conhecida como índices invertidos. Outra fonte de estudos em RI além da otimização de busca, é a ordenação dos resultados de acordo com a relevância dos mesmos. Uma forma de calcular essa relevância é por meio da medida Tfidf. Este artigo tem por objetivo aplicar os conceitos de índice invertidos e a medida Tfidf em BDR, com o intuito de permitir a otimização e ordenação de buscas por termos. 1. Introdução Dentro da área de banco de dados (BD) existem recursos de software, cujo propósito é auxiliar na manipulação de grandes volumes de dados garantindo a segurança das informações e permitindo armazenar, modificar e extrair informações conforme as especificações pré-definidas. Esses recursos são conhecidos como Sistema de Gerenciamento de Banco de Dados (SGBD). Esse tipo de software disponibiliza mecanismos para otimização de consultas, os quais são chamados índices e são responsáveis por tornar as consultas mais eficientes, melhorando assim o desempenho do SGBD. Segundo Barão et.al. (2009), a criação de índices é uma forma das bases de dados melhorarem a performance, por meio da localização mais ágil dos dados que interessam aos usuários. A área de Banco de Dados não é a única que dedica esforços para pesquisa e implementação de estruturas de otimização de buscas de dados. No campo da Recuperação da Informação (RI) também existem estruturas para essa finalidade como é o caso dos índices invertidos, o qual melhora a performance das consultas baseadas em palavras-chaves. Manaus, 25 a 27 de abril de 2013 1 ISSN 2238-5096 (CDR)

Visto que a necessidade do usuário final é obter a resposta de suas consultas de uma forma rápida e eficiente e que o resultado seja realmente o que se esteja buscando, é possível unir as características de busca oferecidas pela área de RI aos recursos disponibilizados pelo SGBD. Além disso, é possível agregar ainda mais valor a essas buscas por meio da ordenação das respostas encontradas de acordo com a projeção adequada das colunas e a relevância das mesmas em relação aos parâmetros da busca. Na literatura são apresentados vários métodos para melhorar a ordenação das respostas ao usuário, dentre eles, encontra-se o Modelo Vetorial, o qual utiliza uma medida de similaridade TfIdf para permitir o cálculo de relevância dos resultados retornados. Assim, o objetivo deste trabalho é aplicar em banco de dados relacionais a estrutura de índice invertido associada à medida TfIdf, com o intuito de otimizar o processo de busca por palavras-chaves, além de permitir a ordenação dos resultados de acordo com a sua relevância para a busca. 2. Referencial Teórico 2.1 Recuperação de Informação Devido à grande necessidade de armazenamento dos dados, o processo de recuperação dos mesmos tornou-se cada vez mais importante e desafiador. Para lidar com esses desafios surge a área de Recuperação da Informação. Segundo Silberschatz (2006), Recuperação de Informação (RI) é uma área da Ciência da Computação que busca soluções para consultas a dados textuais não estruturados. Já o processo de recuperação de informação consiste em localizar documentos relevantes, com base em um critério de busca (palavra-chave ou termo) fornecido pelo usuário. Um dos principais problemas tratados pelos modelos de Recuperação da Informação é dizer quais documentos são mais relevantes para a busca realizada. Em outras palavras, retornar os documentos que têm a maior chance de conter as informações que o usuário espera encontrar. Para isso, foram definidos os modelos de recuperação de informação. Para Miranda (2003), modelos de recuperação de informação são formas que definem como o sistema irá fazer os cálculos de relevância dos documentos. Para tanto, de um modo geral, os modelos de RI propõem a associação de um valor aos documentos candidatos, os quais podem ser as respostas para o que se está buscando. No resultado de uma pesquisa, tais documentos são ordenados com base nesse valor e os que estão no topo são de maior relevância para a busca do usuário. Os principais modelos utilizados em Recuperação da Informação são Booleano, Vetorial e Probabilístico. Nesse trabalho, foram empregados os conceitos utilizados no Modelo Vetorial, o qual é descrito a seguir. 2.2 Modelo Vetorial Segundo Dantas (2002), no modelo vetorial, as distâncias entre um documento e a consulta indicam seu grau de similaridade, ou seja, documentos que possuem os Manaus, 25 a 27 de abril de 2013 2 ISSN 2238-5096 (CDR)

mesmos termos acabam sendo colocados em uma mesma região do espaço e, em teoria, tratam de assuntos similares. Para cálculo dessa similaridade entre documentos, é utilizado o cosseno, conforme fórmula apresentada abaixo. Para Matos (2009), no modelo vetorial os resultados são ordenados de acordo com o grau de similaridade, ou seja, os termos informados pelo usuário no processo de busca devem constar na coleção de documentos disponíveis. Com isso, os documentos que tiverem o maior grau de similaridade estarão no topo do ranking e, portanto, terão maior relevância para o resultado da busca realizada. Uma parte importante desse cálculo é a chamada medida Tfidf, a qual é usada para calcular os pesos dos termos buscados nos documentos, a partir da frequência em que os mesmos ocorrem em tais documentos e da raridade dele na coleção. O cálculo dessa medida é dado pela fórmula apresentada a seguir: W i,d = tf x idf = tf i,d x log(n/df i ) Onde, tf i,d é a frequência do termo i no documento d, ou seja, a quantidade de vezes que o termo i aparece no documento d; log(n/dfi), onde n é o número de documentos na coleção e dfi é a quantidade de documentos da coleção em que o termo i ocorre. Como o objetivo desse trabalho é obter a estrutura de uma consulta e não os dados da consulta, foi possivel utilizar os valores retornados pela medida Tfidf para ordenar os resultados das consultas estruturadas e precisas em bancos de dados relacionais. Portanto, essa ordenação leva em consideração o peso dos termos na coleção de dados analisados e, consequentemente, a sua relevância para a busca. Destaca-se que esse processo de ordenação realiza um somatório do Tfidf quando mais de um termo buscado ocorre no mesmo atributo. 2.3 Índices Invertidos Na área de recuperação de informação, os índices invertidos são muito utilizados para a otimização do processo de busca. De acordo com Harman et. al. (1992), os índices invertidos contêm, para cada termo ou palavra-chave, um apontador para cada documento que contém tal palavra. Assim, levando-se em consideração o seguinte conjunto de textos, onde d[n] representa o documento no qual cada palavra ocorre: d[0] = curso de matemática d[1] = exercícios de matemática Ao construir o índice invertido para cada termo existente nos textos apresentados, tem-se que ocorrem nos seguintes documentos: curso = {0} de = {0, 1} matemática = {0, 1} exercícios = {1}. Dessa forma, ao realizar uma busca pelo termo matemática, sabe-se que o mesmo encontra-se nos documentos d[0] e d[1]. Manaus, 25 a 27 de abril de 2013 3 ISSN 2238-5096 (CDR)

3. Trabalhos Relacionados Na literatura há diversos trabalhos disponíveis referentes à Recuperação de Informação, tais como Costa et. al. (2010), no qual é feita a análise do comportamento do método TFIDF em documentos de especificação de requisitos de software. Os testes demonstraram que na aplicação do modelo vetorial foram obtidos resultados com considerável similaridade conceitual entre os documentos analisados. Outra fonte bastante relevante para pesquisadores interessados no tema é o trabalho de Filho (2001), o qual realiza buscas por páginas Web utilizando um robô para varrer as páginas que contenham um determinado assunto que está sendo buscado. Essas páginas são indexadas no banco de dados e através do modelo vetorial são retornadas as páginas relevantes para o usuário. Outro trabalho relevante é o de Pereira (2012), o qual trata-se de um estudo de caso avaliando a performance da indexação dos arquivos, fazendo comparações entre os métodos de busca utilizando índices invertidos e os métodos utilizando os índices tradicionais (Hash e Btree) de banco de dados relacionais. O presente artigo utilizou a estrutura de indexação de arquivos proposto nesse trabalho, para obter uma performance mais rápida e eficaz na indexação dos termos e assim tornar as buscas mais rápidas. Ressalta-se que o presente trabalho difere-se dos demais, pois é um estudo a respeito da medida TfIdf, aplicada ao índice invertido proposto por Pereira (2012), visando o retorno de consultas estruturadas, as quais são ordenadas pela medida. Assim reduzindo o esforço do desenvolvedor sem que o mesmo tenha conhecimento prévio da estrutura da base de dados. 4. Metodologia de Pesquisa Primeiramente foi realizado um levantamento bibliográfico para compreensão dos conceitos empregados em Recuperação de Informação, especialmente relacionados a índices invertidos e medida Tfidf. Além disso, como a proposta do trabalho em questão é a aplicação prática de tais conceitos ao Modelo Relacional de Banco de Dados (MR), foi necessário fazer um mapeamento dos mesmos para os conceitos usados em MR. Uma vez feita a fundamentação teórica da pesquisa e o mapeamento dos conceitos, foi possível desenvolver o Modelo Proposto, por meio da implementação da estrutura de índice invertido e do algoritmo para cálculo da medida TfIdf em banco de dados relacional, para garantir a eficácia na ordenação dos resultados de busca. Para a avaliação do modelo de busca proposto nesse trabalho, foi utilizada pesquisa experimental. Para tanto, foram executados experimentos para avaliar dois aspectos: a performance de execução das buscas com e sem o uso do modelo proposto com índice invertido; e a ordenação do resultado das buscas de acordo com a relevância da medida Tfidf. Destaque-se que o método desenvolvido foi padronizado para fazer buscas somente em bases de dados que contenham atributos do tipo texto. Em relação à performance, foram levados em consideração três variáveis, conforme apresentadas no Quadro 1 para a avaliação dos experimentos. Manaus, 25 a 27 de abril de 2013 4 ISSN 2238-5096 (CDR)

Quadro 1 - Variáveis usadas na avaliação dos experimentos. Critério Massa de dados na base de dados Quantidade de termos buscados Frequência dos termos buscados na base de dados Entradas Avaliadas 1000, 10.000 e 100.000 registros 01, 02 e 03 termos Não ocorre na base de dados Ocorre em metade dos atributos Ocorre em todos os atributos Nos experimentos relacionados à ordenação das consultas, foi utilizada a métrica MRR - Mean Reciprocal Rank, a qual é tradicionalmente utilizada para medir a qualidade da lista de respostas previstas de um sistema de RI. Finalmente, ressalta-se que as massas de dados utilizadas para realização dos experimentos foram extraídas do site archive.ics.uci.edu/ml/datasets.html e foram importados para o SGBD PostgreSQL 9.2, o qual foi usado nos experimentos. A configuração da máquina emprega nos testes foi Windows 7 Ultimate 64 bits, Processador Intel Core i5 2,67 Ghz, 4 GB de memória e 500 GB de HD. 5. Modelo Proposto Para a composição do modelo de busca proposto nesse trabalho foi fundamental definir uma estrutura composta por tabelas, funções e triggers, que possibilitassem a implementação de um índice invertido, bem como para a realização dos cálculos necessários da medida Tfidf. Assim, esta seção tem o propósito de apresentar a estrutura definida. 5.1 Mapeamento dos Conceitos Como o trabalho emprega conceitos da área de RI em banco de dados, foi necessário traçar um mapeamento entre essas áreas de conhecimento, especialmente no que diz respeito às definições de documentos e coleção de documentos, as quais não existem em BD. Assim, ficou estabelecido que um documento em banco de dados corresponderia a um atributo e a coleção de todos os documentos seria mapeada para o total de atributos do tipo texto existente em toda a base de dados. Desta forma, o cálculo da medida Tfifd representa, nesse caso, o peso de um determinado termo nos atributos que fazem parte da coleção. 5.2 Estrutura de Índices Invertidos Os índices invertidos utilizados em RI foram implementados nesse trabalho, como um conjunto de tabelas relacionadas, as quais têm por objetivo armazenar os termos inclusos na base de dados e os atributos nos quais tais termos foram inseridos. A Figura 1 ilustra a estrutura desenvolvida, a qual foi baseada no modelo definido por Pereira (2012). Manaus, 25 a 27 de abril de 2013 5 ISSN 2238-5096 (CDR)

Figura 1 Estrutura de índice invertido do Modelo Proposto. Destaca-se que nesse trabalho, foi adicionada a frequência de cada termo (nb_termo_frequencia) em um determinado documento (atributo) e o valor da medida Tfidf (nb_tfidf), a qual representa o peso do termo no atributo (documento) identificado na coluna id_atributo. Essas alterações em relação à estrutura proposta por Pereira (2012), foram necessárias para otimizar a busca e o processo de ordenação do resultado por relevância. 5,3 Implementação do Cálculo da Medida Tfidf O cálculo da medida TfIdf nesse trabalho foi implementada na forma de triggers. Assim, supondo uma base de dados com a estrutura apresentada na Figura 2, o modelo proposto requer uma trigger de inclusão, uma de exclusão e uma de alteração para cada tabela. Figura 2 - Representação das tabelas da base de dados. Essas triggers têm por finalidade disparar as funções que irão povoar as tabelas ilustradas na Figura 1, calculando a frequência dos termos e a medida TfIdf dos mesmos. Foram implementadas 6 funções, as quais são: fn_insere_termo_atributo (), fn_termo (), fn_atributo (), fn_termo_frequência (), fn_excluir_termo () e fn_tfidf (). A função principal fn_insere_termo_atributo () recebe os parâmetros passados pela trigger, que são: o valor do atributo, esquema, tabela e o próprio atributo. A mesma é responsável por realizar a separação do valor do atributo em termos (cada palavra corresponde a um termo) e inserir na estrutura de índice invertido do modelo proposto. Está função passa parâmetros de entrada para todas as funções citadas anteriormente, possibilitando a verificação do esquema, tabela, atributo, termo e calcular a frequência do termo e o valor do Tfidf. Exceto a fn_excluir_termo (), pois está é acionada quando é feita a exclusão de um termo e assim decrementar o valor do tf e recalcular o tfidf. Manaus, 25 a 27 de abril de 2013 6 ISSN 2238-5096 (CDR)

Para um melhor entendimento do fluxo de processamento descrito, a Figura 3 ilustra como as triggers e as funções são disparadas. De acordo com a ilustração, quando um registro, contendo atributo do tipo texto é inserido, alterado ou excluído, as triggers vinculadas à tabela que está sendo manipulada são disparadas. Essas triggers invocam a função principal do modelo proposto e esta, por sua vez, chama as demais funções para atualização das tabelas tb_termo, tb_atributo e tb_termo_frequencia. Figura 3 Fluxo de processamento do modelo de busca proposto. 6. Resultados Experimentais Os dados obtidos durante os experimentos relacionados à avaliação de performance foram tabulados e apresentados na forma de gráficos do tipo barras, a fim de permitir a visualização comparativa entre o modelo de busca proposto e o modelo de busca tradicional. Os experimentos realizados foram agrupados levando-se em consideração as variáveis apresentadas no Quadro 1. Os nove tipos de experimentos que foram realizados são descritos no Quadro 2 Quadro 2 Experimentos realizados. Experimento Massa de Dados Qtde de Termos Frequência dos Termos Experimento 01 1000, 10.000 e 100.000 01 Não ocorre na base de dados Experimento 02 1000, 10.000 e 100.000 01 Ocorre em metade dos atributos Experimento 03 1000, 10.000 e 100.000 01 Ocorre em todos os atributos Experimento 04 1000, 10.000 e 100.000 02 Não ocorre na base de dados Experimento 05 1000, 10.000 e 100.000 02 Ocorre em metade dos atributos Experimento 06 1000, 10.000 e 100.000 02 Ocorre em todos os atributos Experimento 07 1000, 10.000 e 100.000 03 Não ocorre na base de dados Experimento 08 1000, 10.000 e 100.000 03 Ocorre em metade dos atributos Experimento 09 1000, 10.000 e 100.000 03 Ocorre em todos os atributos A Figura 4 apresenta o tempo médio, em segundos, coletado durante a execução dos três primeiros experimentos, os quais utilizaram como entrada da busca apenas um (01) termo fornecido pelo usuário. Pelos gráficos, pode-se observar que a performance do modelo proposto foi melhor que do modelo tradicional. Essa diferença de performance é mais notória para a massa de dados de 100.000 registros. Manaus, 25 a 27 de abril de 2013 7 ISSN 2238-5096 (CDR)

Figura 4 Resultado dos experimentos realizados com a busca de um termo. Em relação aos experimentos realizados com a busca de dois (02) termos fornecidos pelo usuário, o modelo proposto também demonstrou ser mais eficiente que o modelo tradicional, conforme pode ser analisado pelos gráficos ilustrados na Figura 5. De acordo com os dados coletados, o desempenho do modelo proposto foi em média 49,30% melhor quando os termos não existiam na base, 48,20% quando os termos pesquisados existiam em metade da coleção de atributos da base e 50,60% quando os termos podiam ser encontrados em todos os atributos da base. Figura 5 Resultado dos experimentos realizados com a busca de dois termos. Finalmente, o modelo proposto também apresentou melhor eficiência quando realizadas buscas com três (03) termos passados por parâmetro. Assim como também ocorreu nos experimentos anteriores, nesses três últimos testes pode-se observar que a eficiência do modelo proposto torna-se cada vez melhor à medida que a massa de dados aumenta. Manaus, 25 a 27 de abril de 2013 8 ISSN 2238-5096 (CDR)

Figura 6 - Resultado dos experimentos realizados com a busca de três termos. Quanto à análise da ordenação das respostas levando em consideração a medida Tfidf, os dados obtidos durante os experimentos foram apresentados de forma tabulada, permitindo a comparação entre as buscas realizadas com um (01), dois (02) e três (03) termos onde os mesmos ocorrem na metade dos atributos e em todos os atributos da base de dados, para uma massa de 100.000 registros. O Quadro 3 mostra os critérios que foram usados para os experimentos. Quadro 3 Experimentos realizados na ordenação dos resultados. Experimento Massa de Dados Qtde de Termos Experimento 01 100.000 01 Experimento 02 100.000 02 Experimento 03 100.000 03 O Quadro 4 apresenta a média coletada para a medida MRR durante a execução dos três experimentos, os quais utilizaram como entrada da busca um (01), dois (02) e três (03) termos fornecido pelo usuário. Essa medida indica que quanto mais próximo do valor 1, melhor a eficácia da ordenação calculada no modelo proposto. De acordo com os resultados obtidos, pode-se observar que a busca é mais eficiente quando os termos buscados ocorrem em um único atributo na base de dados. Já nos casos em que os termos buscados ocorrem em mais de um atributo, a eficácia chegou a 0,25. Quadro 4 Experimentos da ordenação dos resultados usando a medida TfIdf. 7. Considerações Finais Experimento da ordenação dos resultados usando a medida TfIdf Quantidade de termos Em 1 Em 1 ou mais buscados 1 termo atributo 1,0 atributos 0,33 2 termos 1,0 0,50 3 termos 1,0 0,25 A análise experimental realizada nesse trabalho procurou traçar um comparativo entre um novo modelo de busca proposto para bancos de dados relacionais e o modelo de Manaus, 25 a 27 de abril de 2013 9 ISSN 2238-5096 (CDR)

busca tradicional. Ressalta-se que essa proposta apresentada utiliza como recursos de otimização de pesquisa a estrutura de índice invertido e como mecanismo de ordenação dos resultados a medida Tfidf. Com os resultados obtidos, pode-se notar que em todos os experimentos realizados o novo modelo foi mais eficiente que o tradicional em relação ao tempo, em segundos, para localizar o termo buscado na base de dados. Destaca-se, que essa eficiência torna-se melhor à medida que a quantidade de registros aumenta. Como consequência, surge uma oportunidade de melhoria para o algoritmo de busca implementado quando for utilizado com massas de dados menores. Quanto aos resultados obtidos nos experimentos de ordenação utilizando a medida Tfidf, ficou evidenciado que quando empregado para a busca de um único termo, a ordenação das consultas estruturadas tem 100% de corretude. Porém, também se nota uma oportunidade de melhoria para esse algoritmo quando se busca termos em diversos atributos. Somando-se a isso, também é possível identificar como melhoria futura para o processo de ordenação do resultado por relevância, o uso de uma lista de stopwords, ou seja, um conjunto de termos que são muito frequentes nos textos e que não contribuem para o resultado da busca (ex.: de, para, com, onde, dentre outras). Portanto, podem ser descartados na execução da pesquisa. 8. Referências Bibliográficas BARÃO, Bruno et. al. Sistemas de Base de Dados, Análise do SGBD PostgreSQL. Universidade Nova de Lisboa, 2009. COSTA, Adriana Cássia da; JUNIOR, Custódio Gastão da SILVA; Similaridade entre Documentos de Especificação de Requisitos de Software Utilizando o Modelo Vetorial de Recuperação de Informação, 2010. DANTAS, Suzana. Introdução à Recuperação de Informação. 2002. FILHO, Ivan Gesteira Costa; Framework Semi-Automatico de Classificação de Páginas Web; UFPE; Pernambuco, 2001. HARMAN, D. et. al. Inverted Files in Information Retrieval Data Structures & Algorithms. Prentice Hall, 1992. MATOS, Tauller Augusto de Araújo. Uma proposta de construção de índice invertido para recuperação de imagens baseada em conteúdo. Universidade Federal de Uberlândia. Uberlândia, 2009. MIRANDA, Oscar Gomes. Uma Estrutura de Índice Invertido em Blocos Baseada em uma B+-Tree. Universidade Federal de Pernambuco. Recife, 2003. PEREIRA, Micila Sumária Medeiros. Modelo para Busca por Palavra-Chave em Bancos de Dados Relacionais Utilizando Listas Invertidas para Otimização da Pesquisa. Centro Universitário do Norte - UNINORTE. Manaus, 2012. SILBERSCHATZ, Abrahan; KORTH, Henry F; SUDARSHAN, S. Sistemas de Banco de Dados. Elsevier. Rio de Janeiro, 2006. Manaus, 25 a 27 de abril de 2013 10 ISSN 2238-5096 (CDR)