2012-12-17 17 views
11

मैं इन क्षेत्र घोषणाओं है कहते हैं:जब आप सोलर में एक कॉपीफिल्ड करते हैं, तो फील्ड बूस्ट इसके साथ जाता है?

<field name="Title" type="text_general" stored="true" multiValued="false" /> 
<field name="Body" type="text_general" stored="true" multiValued="false" /> 

जब मैं सूचकांक "शीर्षक है," मैं करने के लिए 5 बढ़ावा निर्धारित करते हैं, "शीर्षक" फ़ील्ड में शब्द है, जिसका अर्थ 5x सामान्य के लिए गिनती चाहिए।

तो मैं ऐसा करते हैं:

<copyField source="Title" dest="SearchText"/> 
<copyField source="Body" dest="SearchText"/> 

तो, मैं एक और क्षेत्र कहा जाता में दोनों क्षेत्रों की नकल की है "SearchText।"

जब मैं "सर्चटेक्स्ट" खोजता हूं, तो "शीर्षक" फ़ील्ड से अभी भी उनके 5x बूस्ट लेते हैं? या क्या वे प्रतिलिपि में खो देते हैं? जब आप एक कॉपीफिल्ड करते हैं, तो क्या सभी क्षेत्रों का बढ़ावा "स्तरित" हो जाता है?

उत्तर

0

जहां तक ​​मुझे पता है, बूस्ट प्रति आधार पर एक क्षेत्र पर है। इसलिए, यदि आपने "शीर्षक" फ़ील्ड को बढ़ावा दिया है, तो "सर्चटेक्स्ट" फ़ील्ड में समान वृद्धि नहीं है। मैचों को बढ़ावा देने के लिए आपको "सर्चटेक्स्ट" फ़ील्ड को अलग बढ़ावा देना होगा।

+0

दस्तावेज़ और फ़ील्ड दोनों बूस्ट हैं। तो मैं इसके बारे में भी निश्चित नहीं हूँ। –

9

कुछ पढ़ने के बाद, मुझे लगता है कि बढ़ावा छीन लिया जाता है। हमारा समाधान इस पर किया गया था:

हमने चार फ़ील्ड बनाए: SearchText, SearchText2, SearchText3, और SearchText4। हम सब कुछ को सर्चटेक्स्ट में, सर्चटेक्स्ट 2 में कुछ सामान, सर्चटेक्स्ट 3 में कम सामान, और केवल SearchText4 में सुपर-महत्वपूर्ण सामग्री कॉपी करते हैं।

फिर, हमारे "QF" परम इस तरह दिखता है:

SearchText, SearchText2^3, SearchText3^10, SearchText4^100 

तो, हम क्वेरी के समय कोई नहीं, 3, 10, और 100 से क्षेत्रों को बढ़ाने रहे हैं।

यह सुंदर दिखता नहीं है, लेकिन यह अच्छी तरह से काम करता है और यह हमें बिना किसी रेडिएक्सिंग के बढ़ावा को समायोजित करने की अनुमति देता है।

इसके अलावा, वहाँ एक अमूर्त परत यहाँ है: SearchText2 में कुछ डाल, उदाहरण के लिए, हम कह रहे हैं, "यह महत्वपूर्ण है," हालांकि, हम को परिभाषित नहीं कर रहे हैं कि कैसे महत्वपूर्ण जब तक (संख्यात्मक बढ़ावा के संदर्भ में) प्रश्न समय तो, कॉपीफिल्ड अमूर्त है, और कार्यान्वयन में "क्यूएफ" परम है।

0

जब आप copyfield करते हैं, तो फ़ील्ड के बूस्ट की प्रतिलिपि नहीं बनाई जाती है। हालांकि, एक सरल समाधान है जिसे आपके प्रश्नों को बदलने की आवश्यकता नहीं है।

यदि आप एक ही क्षेत्र के लिए कई copyfield के लिए करते हैं, तो परिणामस्वरूप इसे कई बार कॉपी किया जाएगा, जिससे इसका वजन बढ़ जाएगा।

तो, शीर्षक के लिए 5x वजन प्राप्त करने के लिए, आप बस copyfield पांच बार कर सकते हैं।

<copyField source="Title" dest="SearchText"/> 
<copyField source="Title" dest="SearchText"/> 
<copyField source="Title" dest="SearchText"/> 
<copyField source="Title" dest="SearchText"/> 
<copyField source="Title" dest="SearchText"/> 
<copyField source="Body" dest="SearchText"/> 
संबंधित मुद्दे

 संबंधित मुद्दे