2011-10-09 18 views
5

में फ़ील्ड को कैसे बढ़ावा देना है मेरे हाथ में पहले से ही बढ़ावा दिया गया है। मेरे पास boost1 नामक सोलर इंडेक्स में एक फ़ील्ड है। इस बूस्ट फ़ील्ड में Google पीआर रैंक के समान 1 से 10 का मान होगा। यह वह बढ़ावा है जिसे हलर में चलने वाली प्रत्येक क्वेरी पर लागू किया जाना चाहिए। यहाँ मेरी सूचकांकसोलर

  • ईद
  • शीर्षक
  • पाठ
  • Boost1

बढ़ावा क्षेत्र, प्रत्येक क्वेरी के लिए लागू किया जाना चाहिए में क्षेत्र हैं। मैं Google पीआर रैंक की तरह कार्यक्षमता को लागू करने की कोशिश कर रहा हूं। क्या हलर का उपयोग करके ऐसा करने का कोई तरीका है?

+0

यह अभी भी (2012 से) जानकारीपूर्ण और उपयोगी है: https://nolanlawson.com/2012/06/02/comparing-boost-methods-in-solr/ – Risadinha

उत्तर

8

आप क्वेरी के दौरान वृद्धि जोड़ सकते हैं उदा।

q={!boost b=boost1} 

How_can_I_boost_the_score_of_newer_documents

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

यदि आप अनुरोध हैंडलर के साथ dismax या edismax का उपयोग कर रहे हैं, तो दस्तावेज़ों को बढ़ावा देने के लिए बीएफ (बूस्ट फ़ंक्शन) पैरामीटर का उपयोग किया जा सकता है। http://wiki.apache.org/solr/DisMaxQParserPlugin#bf_.28Boost_Functions.29

bf=boost1^0.5 

यह अनुरोध हैंडलर परिभाषा के साथ डिफ़ॉल्ट रूप में जोड़ा जा सकता है इतना है कि वे उन सभी खोज क्वेरी के लिए लागू कर रहे हैं।

आप को बढ़ावा देने FunctionQuery

+0

हाय, करने के लिए एक अधिक जटिल समारोह क्वेरी कैसे करना है गुणा का उपयोग करके बढ़ावा प्राप्त करें .. कृपया जांचें http://stackoverflow.com/questions/19874983/use-function-query-for-boosting-score-in-solr –

+0

आप 'बूस्ट' (गुणात्मक वृद्धि को प्राथमिकता देना चाहते हैं)) 'edismax' प्रश्नों में' बीएफ' (योजक बढ़ावा) पैरामीटर के लिए। एक लेख जो सभी अलग-अलग मानकों पर कुछ प्रकाश डालता है: https://nolanlawson.com/2012/06/02/comparing-boost-methods-in-solr/ – Risadinha

0

मुझे लगता है कि आप index time document boosts उपयोग करने की आवश्यकता की राशि अलग-अलग करने के लिए समारोह प्रश्नों का उपयोग कर सकते हैं। यदि आप DataImportHandler का उपयोग करते हैं तो this देखें यदि आप XML या this अनुक्रमणित कर रहे हैं।