Question

J'utilise Lucene.net pour l'indexation du contenu et des documents, etc .. sur les sites Web. L'indice est très simple et a ce format:

LuceneId - unique id for Lucene (TypeId + ItemId)
TypeId   - the type of text (eg. page content, product, public doc etc..)
ItemId   - the web page id, document id etc..
Text     - the text indexed
Title    - web page title, document name etc.. to display with the search results

J'ai ces options pour l'adapter au service de contenu multilingue:

  1. Créer un index séparé pour chaque langue. Par exemple. Lucene-frFR, Lucene-FRFR etc ..
  2. Gardez l'un index et ajouter un champ « langue » supplémentaire pour filtrer les résultats.

Quelle est la meilleure option - ou est-il un autre? Je n'ai pas utilisé plusieurs index avant, donc je me penche vers le second.

Était-ce utile?

La solution

Je fais [2], mais un problème que j'ai est que je ne peux pas utiliser différents analyseurs en fonction de la langue. J'ai combiné les mots vides des langues que je veux, mais je perds la capacité de choses plus avancées que l'analyseur offrira, comme provenant etc.

Autres conseils

Vous pouvez éliminer l'option 1 et 2.
Vous pouvez utiliser un index et les champs contenant les mots arabes créent deux fileds pour chacun: Si vous avez champ " Texte " peut contenir des contenus en arabe ou en anglais ==>

  • Créer 2 champs pour " Texte ": 1 champ " Texte ", indexé / recherché avec votre analyseur standard et un autre, « Text_AR », avec le arabicAnalyzer. Pour y parvenir, vous pouvez utiliser PreFieldAnalyzerWrapper
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top