#Este é um post fechado Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!
Pesquisas indexadas - .net magazine 73
Este artigo tem o intuito de desenvolver um sistema de buscas local estilo “Google”, usando um engine conhecido como Lucene.net. Vamos mostrar como indexar algumas informações e posteriormente disponibilizá-las para serem consultadas através de uma interface Web.
.net Magazine 73
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da .net Magazine 73
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da .net Magazine 73
BRK##: 0 - 0
Pesquisas indexadas
Crie um site de buscas local em .NET, estilo “Google”
Resumo do DevMan
O objetivo deste artigo é apresentar o Lucene.net, uma ferramenta que realiza a indexação de arquivos, bem similar ao que o Google Desktop Engine e o Windows Desktop Search fazem. Serão mostrados os conceitos, as principais classes / APIs do Lucene.net e posteriormente vamos colocar em prática seu uso desenvolvendo o exemplo prático. Além de realizar a indexação é possível realizar buscas onde os resultados podem ser ordenados, negritar o texto achado, buscar por palavras aproximadas, fazer pesquisa com a utilização de condicionais lógicas, indexar informações em arquivos que podem ficar alocados tanto no disco quanto na memória, fazer a busca em mais de um índice e muito mais.
O projeto Lucene
O Lucene começou a ser desenvolvido no final de 1997 por Doug Cutting, com a linguagem de programação Java. Em 2000 o projeto Lucene foi lançado no SourceForge, dessa forma os usuários foram apresentados a essa ferramenta de busca, que após um ano da sua ulgação conseguiu vários utilizadores, tornando-se membro do Apache Jakarta (projeto que reúne soluções e frameworks em Java de alta qualidade e colaboração). Dessa forma o projeto ganhou força na sua ulgação e consequentemente por ser Open Source, a colaboração na implementação e melhorias fluíram ao longo dos anos, aumentando a quantidade de colaboradores. Para atender a essa gama de desenvolvedores foi necessário fazer a implementação para outras linguagens de programação, como o C#, Perl, Python e C++.
A Figura 1 mostra em linhas gerais o processo de indexação de texto usado pelo Lucene.net. O motivo de mostrar esse processo é facilitar o entendimento de como é feita a indexação, a procura e ao final, a exibição do resultado para o usuário. Perceba que o texto pode ser extraído de um arquivo HTML, Word, PDF, uma base de dados dentre outras fontes. O mecanismo de extração desse texto fica a cargo do desenvolvedor, pois quando o texto é obtido, o mesmo é repassado ao Lucene.Net para sofrer uma análise.
Figura 1. Visão geral da indexação de texto
Analyzer
Antes de criar o índice, que é o local onde informações analisadas estão alojadas, esses dados passam por um processo de análise realizado pelo Analyzer do framework. Esse Analyzer, que nada mais é do que uma classe, pode tratar a informação passada a ele de ersas maneiras, aplicando tipos de análise. Vamos compreender de forma rápida cada uma delas:
ATENÇÃO! A exibição deste artigo foi interrompida.
#Este é um post fechado
Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!
Pesquisas indexadas
Crie um site de buscas local em .NET, estilo “Google”
Resumo do DevMan
O objetivo deste artigo é apresentar o Lucene.net, uma ferramenta que realiza a indexação de arquivos, bem similar ao que o Google Desktop Engine e o Windows Desktop Search fazem. Serão mostrados os conceitos, as principais classes / APIs do Lucene.net e posteriormente vamos colocar em prática seu uso desenvolvendo o exemplo prático. Além de realizar a indexação é possível realizar buscas onde os resultados podem ser ordenados, negritar o texto achado, buscar por palavras aproximadas, fazer pesquisa com a utilização de condicionais lógicas, indexar informações em arquivos que podem ficar alocados tanto no disco quanto na memória, fazer a busca em mais de um índice e muito mais.
O projeto Lucene
O Lucene começou a ser desenvolvido no final de 1997 por Doug Cutting, com a linguagem de programação Java. Em 2000 o projeto Lucene foi lançado no SourceForge, dessa forma os usuários foram apresentados a essa ferramenta de busca, que após um ano da sua ulgação conseguiu vários utilizadores, tornando-se membro do Apache Jakarta (projeto que reúne soluções e frameworks em Java de alta qualidade e colaboração). Dessa forma o projeto ganhou força na sua ulgação e consequentemente por ser Open Source, a colaboração na implementação e melhorias fluíram ao longo dos anos, aumentando a quantidade de colaboradores. Para atender a essa gama de desenvolvedores foi necessário fazer a implementação para outras linguagens de programação, como o C#, Perl, Python e C++.
A Figura 1 mostra em linhas gerais o processo de indexação de texto usado pelo Lucene.net. O motivo de mostrar esse processo é facilitar o entendimento de como é feita a indexação, a procura e ao final, a exibição do resultado para o usuário. Perceba que o texto pode ser extraído de um arquivo HTML, Word, PDF, uma base de dados dentre outras fontes. O mecanismo de extração desse texto fica a cargo do desenvolvedor, pois quando o texto é obtido, o mesmo é repassado ao Lucene.Net para sofrer uma análise.
Figura 1. Visão geral da indexação de texto
Analyzer
Antes de criar o índice, que é o local onde informações analisadas estão alojadas, esses dados passam por um processo de análise realizado pelo Analyzer do framework. Esse Analyzer, que nada mais é do que uma classe, pode tratar a informação passada a ele de ersas maneiras, aplicando tipos de análise. Vamos compreender de forma rápida cada uma delas:
ATENÇÃO! A exibição deste artigo foi interrompida.
#Este é um post fechado Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!

[Este post ainda não foi associado a uma sequência]
Você está em:
canal .net
Erysson Batista Barros De Souza
Space do autor
Tenho experiência em ASP.NET utilizando a linguagem C#.
Sou formado em Sistemas de Informação pelo o Instituto de Estudos Superiores da Amazônia – IESAM e Especialista em Tecnologia de Desenvolvimento de Softwares pelo Centro Universitário do Pará – CESUPA.
Trabalho no Tribunal de Contas do Estado...
Space do autor


Estudo comparativo entre banco de dados IBM Informix e Microsoft SQL

0
0
Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!