MultiSearcher
पर मुख्य दोष यह है कि एकाधिक खोजकर्ताओं के परिणामों को विलय के एक सेट में विलय करने में कुछ ओवरहेड है। यह एक अनियमित सूचकांक के साथ अनुभव किए गए दंड के समान है, हालांकि संभावित रूप से — जितना गंभीर नहीं है, यह इस बात पर निर्भर करता है कि कितने खोजकर्ता शामिल हैं।
हालांकि, MultiSearcher
बहुत उपयोगी हो सकता है यदि आपके पास बहुत से दस्तावेज़ हैं, या लगातार अपडेट करने की आवश्यकता है। यदि आपके पास एक विशाल डेटाबेस है, तो यह आपको समानांतर में अलग मशीनों पर अनुक्रमित करने के लिए समूहों में अपने दस्तावेज़ों को विभाजित करने की अनुमति देता है, फिर एक साथ खोजा जाता है। यदि आपको लगातार अपडेट की आवश्यकता है, तो आपको MultiSearcher
मिल सकता है जिसमें एक फ़ाइल-सिस्टम निर्देशिका है और एक रैम निर्देशिका आपको तेजी से इंडेक्स अपडेट देती है। नए दस्तावेज़ रैम निर्देशिका में जाते हैं, और समय-समय पर रैम निर्देशिका की सामग्री फ़ाइल-सिस्टम निर्देशिका में विलय कर दी जाती है।
ParallelMultiSearcher
पर भी विचार करें। आपके मशीन आर्किटेक्चर और क्वेरी लोड के आधार पर, यह चोट पहुंचा सकता है या मदद कर सकता है। यदि आपके पास कई कोर हैं, तो यह मदद करने की संभावना है, लेकिन थ्रेडिंग के साथ अतिरिक्त ओवरहेड शामिल है, इसलिए इसे प्रतिनिधि लोड के तहत कुछ प्रोफाइलिंग की आवश्यकता है।
क्या आप कृपया इसका उत्तर दे सकते हैं? http://stackoverflow.com/questions/899542/problem-using-same-instance-of-indexsearcher-for- multult-requests –