संपादित करें, 2016 — दोनों क्यों नहीं?
यदि आप Postgres बनाम Lucene में रुचि रखते हैं, तो दोनों क्यों नहीं? ZomboDB देखें Postgres के लिए एक्सटेंशन, जो Elasticsearch को प्रथम श्रेणी के इंडेक्स प्रकार के रूप में एकीकृत करता है। अभी भी काफी प्रारंभिक परियोजना है लेकिन यह वास्तव में मेरे लिए आशाजनक लग रहा है।
(तकनीकी रूप से हरोकू पर उपलब्ध नहीं है, लेकिन फिर भी देखने लायक है।)
प्रकटीकरण:मैं Websolr का सह-संस्थापक हूं और बोनसाई हेरोकू ऐड-ऑन, इसलिए मेरा दृष्टिकोण ल्यूसीन के प्रति थोड़ा पक्षपाती है।
पोस्टग्रेज फुल-टेक्स्ट सर्च पर मेरा पढ़ा यह है कि यह सीधे उपयोग के मामलों के लिए बहुत ठोस है, लेकिन कई कारण हैं कि ल्यूसीन (और इस प्रकार सोलर और इलास्टिकसर्च) प्रदर्शन और कार्यक्षमता दोनों के मामले में बेहतर है।
शुरुआत के लिए, jpountz प्रश्न का वास्तव में उत्कृष्ट तकनीकी उत्तर प्रदान करता है, सोलर पोस्टग्रेज से इतना तेज क्यों है? यह वास्तव में पचाने के लिए कुछ पढ़ने लायक है।
पोस्टग्रेज के व्यावहारिक लाभ
- किसी ऐसी मौजूदा सेवा का पुन:उपयोग करें जिसे आप पहले से चला रहे हैं, बजाय इसके कि आप कुछ और स्थापित करें और बनाए रखें (या इसके लिए भुगतान करें)।
- काल्पनिक रूप से धीमी SQL से कहीं बेहतर
LIKE
ऑपरेटर। - डेटा को सिंक में रखने में कम परेशानी क्योंकि यह सब एक ही डेटाबेस में है — कुछ बाहरी डेटा सेवा API के साथ कोई एप्लिकेशन-स्तरीय एकीकरण नहीं है।
सौर (या लोचदार खोज) के लाभ
मेरे सिर के ऊपर से, किसी विशेष क्रम में नहीं…
- अपने इंडेक्सिंग और सर्च लोड को अपने नियमित डेटाबेस लोड से अलग स्केल करें।
- एक्सेंट नॉर्मलाइज़िंग, भाषाई स्टेमिंग, एन-ग्राम्स, मार्कअप रिमूवल जैसी चीजों के लिए अधिक लचीला शब्द विश्लेषण… वर्तनी जांच, "रिच कंटेंट" (जैसे, पीडीएफ और वर्ड) एक्सट्रैक्शन जैसी अन्य शानदार सुविधाएं…
- Solr/Lucene पूर्ण-पाठ खोज TODO सूची पर सब कुछ कर सकता है बस ठीक है।
- बहुत बेहतर और तेज़ शब्द प्रासंगिकता रैंकिंग, खोज समय पर कुशलता से अनुकूलन योग्य।
- सामान्य शब्दों या जटिल प्रश्नों के लिए संभवतः तेज़ खोज प्रदर्शन।
- पोस्टग्रेज की तुलना में संभवतः अधिक कुशल अनुक्रमण प्रदर्शन।
- अपने प्राथमिक डेटा स्टोर से अनुक्रमण को अलग करके अपने डेटा मॉडल में बदलाव के लिए बेहतर सहनशीलता
स्पष्ट रूप से मुझे लगता है कि लुसीन पर आधारित एक समर्पित खोज इंजन यहां बेहतर विकल्प है। मूल रूप से, आप लुसीन को खोज विशेषज्ञता के वास्तविक मुक्त स्रोत भंडार के रूप में सोच सकते हैं।
लेकिन अगर आपका एकमात्र विकल्प LIKE
. है ऑपरेटर, फिर पोस्टग्रेज पूर्ण-पाठ खोज एक निश्चित जीत है।