2009-01-20 19 views
5

के माध्यम से खोजें। मैं इस बात पर विचार कर रहा हूं कि NHBernate.Search या PostgreSQL के एम्बेडेड पूर्ण-पाठ खोज समर्थन को मेरे वर्तमान प्रोजेक्ट के लिए चुनना है या नहीं।PostgreSQL पूर्ण-पाठ खोज बनाम NHibernate.SLucene.Net

हम पहले से अनुमान लगा चुके हैं, .NET प्लेटफॉर्म पर NHibernate ORM के साथ PostgreSQL RDBMS का उपयोग कर रहे हैं। उपर्युक्त पूर्ण-पाठ इंजनों पर आपको क्या अनुभव है? क्या मुझे कोई नुकसान है जिसके बारे में मुझे अवगत होना चाहिए?

+0

इस प्रश्न पर एक अच्छा जवाब इस बात पर निर्भर करता है कि आप कैसे खोजना चाहते हैं और आप क्या खोजना चाहते हैं। – Paco

उत्तर

2

मैं ल्यूसीन का उपयोग करने की सलाह दूंगा, हालांकि मुझे लगता है कि पोस्टग्रेस एक अच्छा उत्पाद है। ल्यूसीन के एल्गोरिदम प्राकृतिक भाषा पाठ खोज के लिए "बॉक्स से बाहर" महान काम करते हैं। दूसरे शब्दों में, जब आप केवल सबसे सरल संभव खोज का निर्माण करते हैं, तो ऐसा लगता है कि "सही काम करें" (जो कहने के लिए, आपका अंतर्ज्ञान क्या सुझाव देगा)।

पोस्टग्रेज़ आरडीबी एमजीटी बहुत अच्छी तरह से करता है। यही वह है जिसे इसके लिए डिजाइन किया गया था।

Search for "google" and "yahoo" and "msn" and "search engine". 

कल्पना कीजिए कि यह बनाम NHibernate.Search में क्वेरी को लागू करने के लिए ले जाएगा:

Search for "google" or "yahoo" or "msn" followed by "search engine". 

अब निम्नलिखित खोज करने के लिए एक ही क्वेरी कोड पुन: उपयोग: लेकिन दोनों पर निम्नलिखित के कार्यान्वयन की तुलना PostgreSQL। अपने आप को यह समझाने में लंबा समय नहीं लगाना चाहिए कि NHibernate के साथ लचीली पाठ क्वेरी कार्यक्षमता बनाना आसान है। यह इसके लिए अधिक स्वाभाविक रूप से उपयुक्त है।

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