Les concepts derrière l'indexation et l'interface de programme d'application de Lucene ont déjà été présentés. Pourquoi ne pas simplement utiliser directement Lucene dans l'application Cúram ?
Bien que Lucene soit une excellente interface de programme d'application pour l'indexation et la recherche, elle ne répond pas à toutes les exigences d'un produit de recherche Cúram :
- Elle ne gère pas les problèmes de déploiement : comment exécuter plusieurs serveurs de recherche, comment l'application doit communiquer avec les serveurs de recherche, etc.
- Elle ne gère pas le problème d'importation des données dans les index.
- Elle ne gère pas le problème de synchronisation des données d'index avec les données source dans l'application en cours d'exécution.
- Elle ne gère pas le problème d'interprétation des données renvoyées à partir d'une recherche d'index comme les structs et les types de données Cúram.
- Elle ne gère par l'exigence d'application plus globale de protection du développeur d'applications à partir de la connaissance approfondie de produits tiers spécifiques. Etant donné que Lucene est seulement une solution de recherche potentielle, il semblerait plus sensé de fournir une interface de programme d'application de recherche plus générique.
Cúram Generic Search Server a été développé pour répondre à ces exigences.