आप अनुक्रमण के दौरान बढ़ावा दे सकते हैं, यह कुछ समय के लिए रावेनडीबी में रहा है, लेकिन यह दस्तावेज़ीकरण में नहीं है। हालांकि, कुछ यूनिट परीक्षण हैं जो here को चित्रित करते हैं।
वे परीक्षण एक एकल बढ़ावा मूल्य दिखाते हैं, लेकिन इसकी बजाय आसानी से अन्य दस्तावेज़ मानों से गणना की जा सकती है। आपके पास पूरा दस्तावेज़ उपलब्ध है क्योंकि यह तब किया जाता है जब इंडेक्स प्रविष्टियां लिखी जाती हैं। आपको उस संदर्भ में वर्णित तकनीक के साथ इसे संयोजित करने में सक्षम होना चाहिए।
Map = docs => from doc in docs
select new
{
Title = doc.Title.Boost(doc.DateCreated.Ticks/1000000f)
};
तुम भी अगर आप अपने खोज एल्गोरिदम में अन्य क्षेत्रों है जो उपयोगी हो सकता है के बजाय सिर्फ शीर्षक फ़ील्ड के पूरे दस्तावेज, को बढ़ावा देने के कर सकते हैं:
Map = docs => from doc in docs
select new
{
doc.Title
}.Boost(doc.DateCreated.Ticks/1000000f);
आप सही के साथ प्रयोग करने की आवश्यकता हो सकती बढ़ावा राशि के लिए उपयोग करने के लिए मूल्य। मिलीसेकंड में 10,000 टिक हैं, इसलिए मैं इतनी बड़ी संख्या से विभाजित हूं।
साथ ही, सावधान रहें कि DateTime
आप यूटीसी में काम कर रहे हैं, या यदि आपके पास यह कहां से नियंत्रण नहीं है, तो इसके बजाय DateTimeOffset
का उपयोग करें। क्यूं कर? चूंकि आप कुछ संदर्भ बिंदु से गणना की अवधि का उपयोग कर रहे हैं और आप नहीं चाहते हैं कि परिणाम विभिन्न समय क्षेत्रों या डेलाइट बचत समय परिवर्तनों के आसपास अस्पष्ट हो।
स्रोत
2012-12-13 18:21:24
बूस्टिंग दस्तावेज़ों के लिंक के लिए धन्यवाद, लेकिन आप पुनरावृत्ति से कैसे बढ़ेंगे? मैंने आशा व्यक्त करने के लिए थोड़ा सा सवाल उठाया है। स्पष्टीकरण के लिए –
धन्यवाद। मुझे इस बारे में थोड़ा सा सोचने दो। आपके द्वारा लिंक किए गए पोस्ट में वर्णित तकनीक के कुछ रेवेन स्वाद का उपयोग करना संभव होना चाहिए। –
उत्तर अपडेट किया गया। मुझे आशा है कि यह परिणाम आपको मिलेगा जिसके परिणामस्वरूप आप खोज रहे हैं! –