Frage

ich benutze Lucene.net Für die Indizierung von Inhalten & Dokumenten usw. auf Websites. Der Index ist sehr einfach und hat dieses 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

Ich habe diese Optionen, um es anzupassen, um mehrsprachige Inhalte zu bedienen:

  1. Erstellen Sie für jede Sprache einen separaten Index. Z.
  2. Halten Sie den einen Index und fügen Sie ihm ein zusätzliches "Sprachfeld" hinzu, um die Ergebnisse zu filtern.

Welches ist die beste Option - oder gibt es einen anderen? Ich habe noch nicht mehrere Indizes verwendet, also lehne ich mich zum zweiten an.

War es hilfreich?

Lösung

Ich mache [2], aber ein Problem, das ich habe, ist, dass ich je nach Sprache keine unterschiedlichen Analysatoren verwenden kann. Ich habe die Stoppwörter der gewünschten Sprachen kombiniert, aber ich verliere die Fähigkeit fortgeschrittenerer Dinge, die der Analysator anbietet, wie z. B. Stamm usw.

Andere Tipps

Sie können Option 1 und 2 beseitigen.
Sie können einen Index und die Felder verwenden, die arabische Wörter enthält, erstellen jeweils zwei Einreichungen: Wenn Sie Feld haben "Text"könnte arabische oder englische Inhalte enthalten ==>

  • Erstellen Sie 2 Felder für "Text": 1 Feld", "Text", indexiert/gesucht mit Ihrem Standardanalysator und einem anderen", "Text_ar"Mit dem Arabicanalyzer. Um das zu erreichen, können Sie verwendenPrefieldanalyzerwrapper
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top