हां, मैंने इसका ठीक वही उपयोग किया है जिसका आप वर्णन कर रहे हैं। हमारे पास दो सेवाएं थीं - एक पढ़ने के लिए, और एक लिखने के लिए, लेकिन केवल इसलिए कि हमारे पास कई पाठक थे। मुझे यकीन है कि हम इसे सिर्फ एक सेवा (लेखक) के साथ कर सकते थे और पाठक को वेब ऐप और सेवाओं में एम्बेड कर सकते थे।
मैंने सामान्य डेटाबेस इंडेक्सर के रूप में lucene.net का उपयोग किया है, इसलिए मुझे जो वापस मिला वह मूल रूप से डीबी आईडी (अनुक्रमित ईमेल संदेशों के लिए) था, और मैंने इसका उपयोग खोज परिणामों को पॉप्युलेट करने के लिए पर्याप्त जानकारी प्राप्त करने के लिए भी किया है या जैसे स्पर्श किए बिना डेटाबेस। यह दोनों मामलों में बहुत अच्छा काम करता है, एसक्यूएल थोड़ा धीमा हो सकता है, क्योंकि आपको बहुत अधिक एक आईडी प्राप्त करना है, एक आईडी आदि का चयन करना है। हमने इसे एक अस्थायी तालिका बनाकर प्राप्त किया (इसमें केवल आईडी पंक्ति के साथ) और एक फ़ाइल से थोक-सम्मिलित करना (जो ल्यूसीन से आउटपुट था) फिर संदेश तालिका में शामिल होना। बहुत तेज था।
लुसीन सही नहीं है, और आपको रिलेशनल डेटाबेस बॉक्स के बाहर थोड़ा सोचना होगा, क्योंकि यह पूरी तरह से एक नहीं है, लेकिन यह जो करता है उसमें बहुत अच्छा है। एक नज़र के लायक, और, मुझे बताया गया है, "ओह, क्षमा करें, आपको अपनी अनुक्रमणिका फिर से बनाने की ज़रूरत है" समस्याएं नहीं हैं जो एमएस एसक्यूएल का एफटीआई करता है।
BTW, हम 20-50 मिलियन ईमेल (और लगभग 1 मिलियन अद्वितीय अटैचमेंट) के साथ काम कर रहे थे, कुल मिलाकर लगभग 20GB ल्यूसीन इंडेक्स, और 250+GB SQL डेटाबेस + अटैचमेंट।
प्रदर्शन शानदार था, कम से कम कहने के लिए - बस सुनिश्चित करें कि आप अपने मर्ज कारकों के बारे में सोचते हैं, और ट्विक करते हैं (जब यह इंडेक्स सेगमेंट को मर्ज करता है)। एक से अधिक सेगमेंट होने में कोई समस्या नहीं है, लेकिन एक बड़ी समस्या हो सकती है यदि आप दो सेगमेंट को मर्ज करने का प्रयास करते हैं, जिसमें प्रत्येक में 1mil आइटम हैं, और आपके पास एक वॉचर थ्रेड है जो बहुत अधिक समय लेने पर प्रक्रिया को मार देता है ... .. (हाँ, इसने हमारे गधे को थोड़ी देर के लिए लात मारी)। इसलिए प्रति चीज़ दस्तावेज़ों की अधिकतम संख्या कम रखें (यानी, इसे अधिकतम पर सेट न करें जैसे हमने किया था!)
संपादित करें कोरी ट्रैगर ने यहां BugTracker.NET में Lucene.NET का उपयोग करने का दस्तावेजीकरण किया।