मैं Magento कनेक्ट में खोज कार्यक्षमता के पीछे तर्क या एल्गोरिथ्म को समझना चाहता हूं जब Refine खोज में विकल्प के आधार पर क्रमबद्धता को क्रमबद्धता के आधार पर सेट किया जाता है
मैं Magento कनेक्ट में खोज कार्यक्षमता के पीछे तर्क या एल्गोरिथ्म को समझना चाहता हूं जब Refine खोज में विकल्प के आधार पर क्रमबद्धता को क्रमबद्धता के आधार पर सेट किया जाता है
जवाबों:
मुझे लगता है कि खोज MySQL FULLTEXT इंडेक्स का उपयोग करके कार्यान्वित की जाती है।
यहाँ MySQL के आधिकारिक प्रलेखन से एक उद्धरण दिया गया है कि कैसे सूचकांक काम करता है:
लौटे पंक्तियों को पहले उच्चतम प्रासंगिकता के साथ स्वचालित रूप से हल किया जाता है। प्रासंगिकता के मान गैर-अस्थायी फ़्लोटिंग पॉइंट हैं। शून्य प्रासंगिकता का मतलब कोई समानता नहीं है। प्रासंगिकता की गणना पंक्ति में शब्दों की संख्या, उस पंक्ति में अद्वितीय शब्दों की संख्या, संग्रह में शब्दों की कुल संख्या और एक विशेष शब्द वाले दस्तावेज़ों (पंक्तियों) की संख्या के आधार पर की जाती है।
इसके प्रमाण के रूप में आप निम्नलिखित खोज शब्दों का उपयोग करके Magento Connect वेबसाइट पर खोज करने का प्रयास कर सकते हैं:
पहले शब्द के लिए पहले परिणाम शीर्षक के साथ मॉड्यूल हैं:
दूसरे के लिए:
पिछले एक के लिए:
जैसा कि आप सभी मामलों में देख सकते हैं कि पहले आइटम में शीर्षक में खोज शब्द की एक से अधिक घटनाएं हैं, इसलिए उनमें से प्रासंगिकता अधिक है।
लगता है कि कैसे Magento कनेक्ट खोज काम करता है।
जबकि Magento.com Drupal पर बनाया गया है, Magento Connect कम से कम नींव के रूप में Magento का ही उपयोग करता है।
magento-connect/catalogsearch/result/?q=TERM
उपयोग की गई जावास्क्रिप्ट फाइलें:
CSS फाइलों जैसे पथ http://www.magentocommerce.com/magento-connect/skin/frontend/enterprise/connect/css/css/base.css में हैडर वाले लाइसेंस:
* @category design
* @package enterprise_connect
* @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
* @license http://www.magentocommerce.com/license/enterprise-edition
इस जानकारी के साथ, हम यह मान सकते हैं कि खोज उसी तरह से काम करती है जैसे मैगेंटो एंटरप्राइज में। अब कई संभावनाएं हैं:
जैसा कि आप देख सकते हैं कि क्या आप मनमाने ढंग से खोज संयोजनों के लिए खोज करते हैं, यह डिफ़ॉल्ट LIKE
खोज नहीं है जिसके साथ OR
हर कोई नफरत करता है। तो या तो यह फुलटेक्स्ट सर्च है जो डिफ़ॉल्ट रूप से प्रासंगिकता से आदेश देता है, जैसा कि @alex_b द्वारा सुझाया गया है या Enterprise_Search मॉड्यूल की सोलर खोज है, जिसके लिए मुझे संभवतः विवरणों का खुलासा करने की अनुमति नहीं है।