di: Paolo Maresca 20 Luglio 2009
Il reperimento veloce ed efficace delle informazioni è molto importante, sia sul Web, sia nei tanti ambiti in cui la mole di dati digitali è molto grande. Per questo occorre introdurre sistemi che indicizzino i dati, semplificando e ottimizzando le ricerche. In un articolo precedente abbiamo introdotto Lucene, la libreria di Apache che fornisce degli strumenti preconfezionati per implementare proprio l'indicizzazione e la ricerca.
In questo articolo esamineremo prima un'architettura generica per motori di ricerca full-text, poi un'implementazione di questa architettura che sfrutta la Lucene.
Un motore di ricerca full-text è composto, in genere, di due parti principali: un front-end, che serve da interfaccia utente, e un back-end che, invece, implementa le funzioni avanzate di ricerca delle informazioni, sia dai documenti (file di testo o documenti web), sia dai database. Il back-end si occupa anche di realizzare degli indici ottimizzati, che sono fondamentali in fase di ricerca.
Figura 1. Architettura di un generico motore di ricerca full-text
Le parti di front-end e di back-end del sistema si compongono di diverse entità, ognuna delle quali ricopre un ruolo specifico e compie una parte di elaborazione specifica del processo di ricerca.
La parte di front-end contiene:
La parte di back-end, invece, è composta da:
Appartengono alla parte di back-end del sistema, ovviamente, anche gli indici generati dall'indicizzatore, i database ed infine i file che contengono generici documenti di testo oppure pagine Web salvate da Internet (una delle modalità operative degli spider è proprio quella di esplorare la rete globale, salvare i documenti ipertestuali ed analizzarli).
Una volta esaminata l'architettura generale di un motore di ricerca full-text, sarà più semplice comprendere i passaggi necessari all'implemtrattazione del progetto.
|
AppFuse: realizzare un'applicazione completa (implementare i servizi) |
Guida Apache StrutsIl primo e più utilizzato tra i framework MVC del mondo Java,... |
Guida Java SpringScoprire il lightweight container più famoso del mondo Java.... |
Guida Java 6Prendendo le mosse dalla guida Java, già presente su HTML.it,... |
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
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |