में टोकन फ़िल्टर का नियंत्रण क्रम ElasticSearch में टोकन फ़िल्टर लागू करने के क्रम को नियंत्रित करने का प्रयास कर रहा है।ElasticSearch
मुझे उन दस्तावेज़ों से पता है जो टोकनिज़र पहले लागू होते हैं, फिर टोकन फ़िल्टर, लेकिन वे उल्लेख नहीं करते हैं कि टोकन फ़िल्टर का क्रम कैसे निर्धारित किया जाता है।
यहाँ मेरी विश्लेषण सेटअप स्क्रिप्ट से एक YAML टुकड़ा है:
KeywordNameIndexAnalyzer :
type : custom
tokenizer : whitespace
filter : [my_word_concatenator, keyword_ngram]
मैं सोचा होगा कि my_word_concatenator
keyword_ngram
से पहले लागू किया जाएगा, लेकिन ऐसा लगता है जैसे कि ऐसा नहीं है। किसी को पता है कि कैसे (या अगर) इन फिल्टर के आदेश को नियंत्रित किया जा सकता है?
बहुत बहुत धन्यवाद!
आपकी अपेक्षाएं सही हैं। [कस्टम विश्लेषक] में फ़िल्टर (https://github.com/elasticsearch/elasticsearch/blob/a0a8538ef9c7d8f24dc9b9f081c548f7d9e8b7cd/src/main/java/org/elasticsearch/index/analysis/CustomAnalyzer.java#L98) क्रम में लागू होते हैं फ़िल्टर सरणी द्वारा निर्दिष्ट। क्या आप एक उदाहरण प्रदान कर सकते हैं, जहां यह मामला प्रतीत नहीं होता है? – imotov
आप सही हैं - आदेश का कारण लग रहा था क्योंकि मैंने टोकननाइज़र और टोकन फ़िल्टर का एक गैर-संयोजन संयोजन का उपयोग किया था। यदि आप उत्सुक हैं, तो my_word_concatenator व्हाइटस्पेस स्ट्रिप्स करता है, लेकिन चूंकि मैं व्हाइटस्पेस टोकनेज़र का उपयोग कर रहा था, इसलिए फिल्टर में प्राप्त टोकन में कोई सफेद जगह नहीं थी। तो 1 2 के बाद होने के विरोध में, बिल्कुल नहीं हो रहा था। –