|
|
Tema
da Monografia: Integrando recuperação de informação
em banco de dados usando Hibernate Search
Resumo da Monografia:
Um dos grandes desafios no domínio
de pesquisa de banco de dados é conseguir buscar dados e
informações de maneira eficiente e rápida. A
recuperação de informação (RI) lida
com representação, armazenamento, organização
e acesso a informações [1] através de
indexações sobre documentos pesquisados. Contudo,
existe um problema entre a recuperação da informação
e o banco de dados: como construir os índices e recuperar a
informação desejada a partir do banco de dados. Este
trabalho tentará esclarecer essa questão, explorando
ferramentas como o Hibernate [2] e o Hibernate Search[3], que
possui o Apache Lucene [4] como motor de busca. O Hibernate Search
é um arcabouço que executa uma busca em documentos
"full-text" e persiste os dados através de
anotações do arcabouço do próprio
Hibernate. Ele tem como principais características:
criar índices/objetos;
evitar problemas de duplicação,
através do gerenciamento de índices, mantendo as
mudanças sincronizadas no banco de dados e otimizando o
acesso de forma transparente;
permitir a busca de índices e a recuperação
de objetos da mesma forma que uma query de Hibernate faria.
Utilizaremos como estudo de caso o projeto
Colméia, um sistema web que visa gerenciar a biblioteca e
que vem sendo desenvolvido por alunos do IME, sob a coordenadoria
dos profs. João Eduardo Ferreira, Eduardo Colli e Fábio
Kon.
Objetivos:
Entender os conceitos de RI;
Estudar os mecanismos do Apache
Lucene;
Explorar o framework Hibernate
Search da Apache para realizar a indexação,
entendendo seu funcionamento;
Entender e explicar a
arquitetura do banco de dados do projeto Colméia;
Aplicar o estudo realizado no projeto de busca do Colméia.
Atividades realizadas:
Em março, iniciamos a
retomada do projeto Colméia e entramos em contato com as
diversas tecnologias utilizadas no sistema: Struts, Apache
Velocity, Apache Tomcat e PostgreSQL.
Em abril, formamos um grupo de
estudos com o prof. João Eduardo Ferreira e os alunos de
pós-graduação Tiago Motta Jorge e Fernanda
Almeida para estudar os conceitos de RI e indexação
de [1]. Os tópicos estudados até agora foram:
Conceitos básicos:
Informação, Recuperação de Dados,
Recuperação de Informação, Processo
de Recuperação.
Modelos de RI: modelos
clássicos (booleano, vetorial, probabilístico),
modelos alternativos, modelos de texto estruturado, modelos de
browsing.
Avaliação da Recuperação:
Avalição de Performance da Recuperação,
Conceitos de Recall e Precision, Reference Collections.
Cronograma
Julho:
Estudo das ferramentas
Hibernate, Hibernate Search e Apache Lucene.
Início da elaboração da parte
conceitual da monografia.
Agosto:
Implementação de
protótipos utilizando as ferramentas estudadas.
Início da implementação
do módulo de indexação e busca no projeto
Colméia.
Início da elaboração da parte técnica
da monografia.
Setembro:
Outubro:
Preparação do
pôster e da apresentação.
Finalização da
implementação do projeto.
Elaboração da parte subjetiva da monografia.
Novembro:
Estrutura esperada da monografia:
1. Introdução
2. Parte Técnica
2.1. Conceitos
2.1.1. Recuperação de Informação
2.1.2. Indexação
2.2. Ferramentas
2.2.1. Hibernate
2.2.2. Hibernate Search
2.2.3. Lucene
2.3. Estudo de caso
2.3.1. Projeto Colméia
2.3.2. Resultados
2.4. Conclusão
3. Parte Subjetiva
Referências Bibliográficas:
[1] BAEZA-YATES R.; RIBEIRO-NETO B. Modern Information
Retrieval. Addison Wesley, 1999. [2] BAUER, C.;
KING, G. Hibernate in Action (In Action Series). Manning
Publications Co, 2004. [3] HIBERNATE Search. Disponível em:
<http://www.hibernate.org/410.html>. Acesso em: 13/06/2008. [4]
HATCHER, E.; GOSPODNETIC, O. Lucene in Action (In Action
Series). Manning Publications Co, 2004.
|