sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE : [sdx-users] SDX vs. Lucene?


From: Martin Sevigny
Subject: RE : [sdx-users] SDX vs. Lucene?
Date: Fri, 10 Jan 2003 14:20:30 +0100

Bonjour,

> Cherchant à créer une application _simple_ de recherche 
> documentaire (environ 200 000 documents XML à rechercher, cf. 
> message précédent), je me demande si SDX est nécessaire ou si 
> Lucene seul suffirait (avec un analyser en français)?

Lucene seul suffirait, comme toujours. La véritable question est de
savoir combien de temps de développement l'une ou l'autre solution
demande. Pour une solution d'indexation XML basée sur Lucene :
http://www.isogen.com/downloads/demos/demos.jsp#xml_searching_demo.

> A supposer que la liste sdx-users soit le bon endroit pour 
> poser cette question, existe-t-il un document comparant les 
> deux solutions? Quelqu'un a-t-il essayé de mettre en oeuvre 
> l'une et l'autre et peut-il lister brièvement les avantages 
> et inconvénients de chaque approche?

Je ne crois pas qu'un tel document existe.

Lucene est une API, SDX plutôt une infrastructure. Il y a, à mon avis,
deux fonctions principales que SDX apporte à une solution Lucene "pure"
:

- une méthode simple et robuste de créer des index à partir de
structures XML quelconques, en manipulant cette structure
- des services autour de la recherche documentaire dans un environnement
Web (pagination des résultats, mise en évidence des mots recherchés,
affichage des documents, etc.)

Si l'une ou l'autre de ces fonctions n'est pas importante pour une
application, une solution Lucene peut être plus simple à développer...
si on connaît bien Java.

On peut aussi dire que SDX est une couche au-dessus de Cocoon et Lucene.
Cette couche supplémentaire peut être intéressante car elle rend les
développements plus "simples", plus déclaratifs
(<sdx:executeSimpleQuery/> plutôt que 20 lignes Java), mais dans
certains cas elle peut être dérangeante car cela alourdit les
installations, les performances, etc.

Je crois aussi que le nombre d'applications à faire peut être un facteur
décisif. S'il y a une seule base documentaire simple à faire, SDX sera
peut-être une courbe d'apprentissage un peu longue. Par contre, s'il y a
plusieurs applications, je crois que ce sera plus simple de les adapter
que d'adapter le code Java qui appelle Lucene.

Nous n'avons jamais fait d'applications Lucene autre qu'avec SDX, alors
difficile de répondre directement à la question. De plus, SDX étant
lui-même une application Lucene, on peut voir que finalement peu de code
SDX interagit directement avec l'API Lucene. Le reste est de la "valeur
ajoutée".

Voilà ce que ça m'inspire pour l'instant...

Martin Sévigny





reply via email to

[Prev in Thread] Current Thread [Next in Thread]