Java  »  Articoli  »  JSP e servlet 

Introduzione ad Apache Lucene

di: Paolo Maresca     13 Luglio 2009

Lucene è un progetto Apache Jakarta, che mette a disposizione un insieme di API scritte in Java, funzionali all'implementazione di potenti (efficienti ed altamente scalabili) motori di ricerca full-text per applicazioni J2EE.

La ricerca full-text si pone come obiettivo quello di render possibile all'utente di ricercare quanto desiderato fornendo esclusivamente una chiave di ricerca, talvolta quest'ultima può essere anche molto generica. Esempi famosi di motori di ricerca full-text sono Yahoo! e Google, grazie ai quali il mondo web ad oggi è interrogabile nonostante la sua complessità e vastità.

L'esempio appena fatto, però, non deve far pensare che solo particolari tipi di applicazioni richiedano (nella fattispecie, quelle Web) una ricerca di tipo full-text, infatti un controesempio altrettanto famoso potrebbe essere Google Desktop, il quale fornisce capacità di ricerca full-text all'utenza di un sistema operativo rispetto ai dati immagazzinati sulla macchina locale.

Il complesso delle API messe a disposizione dal core di Lucene consente di implementare funzionalità di indicizzazione rispetto a diversi formati di documento (PDF, HTML, documenti Office, documenti di testo semplice, etc.) e rispetto ad informazioni direttamente estrapolate da un database.

Il risultato dell'indicizzazione, come è lecito attendersi, è un indice di Lucene interrogabile in fase di ricerca mediante delle query. Le query di Lucene rispettano una logica ben definita (in questo articolo introduttivo non sarà approfondita) che è del tutto filtrata all'utente dal momento che a quest'ultimo è richiesta soltanto una chiave di ricerca rispetto alla quale interrogare l'indice precostituito.

Il risultato di una generica ricerca su di un indice di Lucene è una lista di documenti, precedentemente indicizzati, che contengono una o più parole costituenti la keyword di ricerca. Ad ogni documento restituito è assegnato anche uno score (punteggio) che indica all'utente quanto affine sia il documento in questione rispetto alla chiave di ricerca fornita.

Guide Java

Guida Apache Struts

Il primo e più utilizzato tra i framework MVC del mondo Java,...

Guida Java Spring

Scoprire il lightweight container più famoso del mondo Java....

Guida Java 6

Prendendo le mosse dalla guida Java, già presente su HTML.it,...

Altre guide

Newsletter @Programmazione

Ogni mese, direttamente nella tua e-mail: articoli, script e guide su Java, Visual Basic, VB.Net ed i più diffusi linguaggi di programmazione.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti