Extension:CirrusSearch/hi

CirrusSearch एक्सटेंशन की मदद से आप मीडियाविकि पर Elasticsearch के ज़रिए खोज सकते हैं।

Elastic Search is a standalone third-party software that must be installed in advance. It's a database system that provides search and indexing functionality, and where the current text of all pages of your wiki will be indexed for faster search results. The communication between MediaWiki and ElasticSearch is done through web services.

यह पृष्ठ स्थापना के लिए है। स्थापना के काम करने के बाद उपयोग के लिए देखें।

लक्ष्य

 * कोई लोकल निर्भरता नहीं जो इसे स्थापित करना मुश्किल बना दे
 * मात्र निर्भरताएँ हैं पूर्ण-PHP मीडियाविकि एक्सटेंशन्स, और Elasticsearch
 * विकि पृष्ठों के लिए एक करीब-लाइव खोज इनडेक्स प्रदान करना जिसे दूसरे मीडियाविकि एक्सटेंशनों द्वारा बढ़ाया जा सके
 * द्वारा सदस्यों को दिए गए क्वेरी के सभी विकल्प, और अधिक प्रदान करना

निर्भरताएँ

 * PHP और cURL
 * PHP के लिए मीडियाविकि की मानक आवश्यकताओं के अलावा, CirrusSearch को cURL समर्थन के साथ संकलित किए जाने के लिए PHP की ज़रूरत है।
 * ध्यान रखें कि संस्करण 6.8 से पहले के Elasticsearch संस्करण PHP 8 से अनुकूल नहीं हैं।
 * Elasticsearch
 * आपको Elasticsearch स्थापित करना होगा।

Every version of ElasticSearch change how web services work, and cause compatibility problems. You must install the version of Elastic Search compatible with the version of MediaWiki you are currently using:

ध्यान रखें कि इसके साथ OpenJDK जैसी एक जावा स्थापना की भी ज़रूरत होगी। सबसे अच्छा होगा कि आप आधिकारिक Elasticsearch Docker चित्र या फिर किसी स्वयं होस्ट किए गए संस्करण का इस्तेमाल करें। Amazon OpenSearch (पूर्व Amazon Elasticsearch) जैसे प्रबंधित उत्पाद काम करेंगे मगर इनमें विशेषताओं के अनुसार अतिरिक्त कॉन्फ़िगरेशन की ज़रूरत पड़ सकती है। For example, Amazon OpenSearch only listens for Elasticsearch API requests over HTTPS on port 443 (i.e. it does not expose the default Elasticsearch port 9200), so a TLS-enabled proxy (e.g. Nginx) can enable CirrusSearch to communicate with an Amazon OpenSearch cluster.


 * Elastica is a PHP library to talk to Elasticsearch. Install Elastica per the instructions below.

देखें।
 * अन्य :
 * Due to the actual handling of jobs by the CirrusSearch extension, it is advisable to set up jobs in Redis to prevent messages like Notice: unserialize: Error at offset 64870 of 65535 bytes in JobQueueDB.php and subsequent errors like Unsupported operand types.

हालाँकि नीचे की विधि में बताया गया है कि गिट से स्थापित करते समय सिर्फ Composer चलाने की ज़रूरत है, सभी PHP निर्भरताओं को स्थापित करने के लिए इसे वैसे भी प्रकाशित करने की ज़रूरत पड़ सकती है।

अपग्रेड करना
कृपया CirrusSearch फ़ाइल में अपग्रेड करने की विधि का पालन करें।

कॉन्फ़िगरेशन
CirrusSearch के कॉन्फ़िगरेशन पैरामीटरों को फ़ाइल में प्रलेखित किया गया है। CirrusSearch कॉन्फ़िगरेशन प्रोफ़ाइलों पर प्रलेख भी देखें।

हुक
CirrusSearch एक्सटेंशन कई हुक्स परिभाषित करता है जिसका इस्तेमाल करके दूसरे एक्सटेंशन्स मूल स्केमा को बढ़ाकर दस्तावेज़ों को बदल सकते हैं। निम्नलिखित हुक उपलब्ध हैं:


 * - विवेचन के लिए कॉन्फ़िगरेशन में हुक करने देता है
 * - फ़ील्ड्स के मानचित्रण को कॉन्फ़िगर करने देता है
 * - एक्सटेंशनों को किसी पृष्ठ से बने ElasticSearch दस्तावेज़ को बदलने की अनुमति देता है
 * - एक्सटेंशनों को दस्तावेज़ों की आवक और जावक कड़ियों को प्रोसेस करने की अनुमति देता है
 * - बुलाया जाता है जब पृष्ठों के किसी समूह को इनडेक्स किया जाए
 * - एक्सटेंशनों को क्वेरी पार्सर की सुविधाएँ जोड़ने देता है
 * - एक्सटेंशनों को संसाधन रीस्कोर बिल्डर फ़ंक्शन्स परिभाषित करने देता है
 * - एक्सटेंशनों को खोज के कई हिस्से और कॉन्फ़िगरेशन्स घोषित करने देता है

API
CirrusSearch की सुविधाओं का इस्तेमाल API क्वेरीज़ में किया जा सकता है। खोज साधारण खोज API  द्वारा किया जाता है; आप सिर्फ CirrusSearch पर उपलब्ध कुछ सुविधाओं का इस्तेमाल कर सकते हैं, जैसे   विशेष उपसर्ग जिससे आप Marie Curie और radium से संबंधित दूसरे पृष्ठ ढूँढ़ सकते हैं: api.php?action=query&list=search&srsearch=morelike:Marie_Curie%7Cradium&srlimit=10&srprop=size&formatversion=2 अनुकूलित API-ओं और पैरामीटरों से CirrusSearch के कॉन्फ़िगरेशन और डीबग की जानकारी पाई जा सकती है:


 * मॉड्यूल: 2014?action=cirrusdump
 * पैरामीटर से Special:Search का इस्तेमाल करें या API क्वेरीज़ खोजें: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpQuery
 * parameter to Special:Search or search API queries: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpResult
 * An additional parameter,, can be passed with   to have the Lucene explanation of the score included with the result dump: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpResult&cirrusExplain It can also be used to get the explanation in a human-readable format, by giving it one of the values  ,   or  , such as: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpResult&cirrusExplain=pretty
 * ,,  ,   modules to obtain dump from the CirrusSearch setup: api.php?action=cirrus-config-dump&formatversion=2



यह भी देखें

 * साधारण कड़ियाँ
 * - CirrusSearch उपयोग प्रलेख (स्थापना के बाद ज़रूरत पड़ती है)
 * विकिमीडिया Cirrus/Elastic के सेटअप के बारे में जानकारी
 * - sets of tunable parameters that influence various aspect of the indexing
 * - provides faceted search API for Semantic MediaWiki using ElasticSearch.
 * - Enhances Special:Search by providing advanced parameters
 * डीबगिंग
 * पता कैसे लगाएँ कि Cirrus का इस्तेमाल असल में खोज बैक-एंड के रूप में किया जा रहा है या नहीं
 * पता कैसे लगाएँ कि Cirrus का इस्तेमाल असल में खोज बैक-एंड के रूप में किया जा रहा है या नहीं



स्थानीय विकास
Elastic Search सेवा को Vagrant रोल और मीडियाविकि Vagrant की मदद से चलाया जाता है।

Docker के लिए आप  जैसे किसी कमांड का इस्तेमाल कर सकते हैं। फिर स्थापना और कॉन्फ़िगरेशन के अनुदेशों का पालन करें। अगर आपका वेब-होस्ट किसी कंटेनर में है, आपको यह सुनिश्चित करना होगा कि कंटेनर एक ही नेटवर्क पर है, और LocalSettings.php में आप  को होस्ट के नाम के रूप में सन्दर्भित करना चाहेंगे। इसमें बुनियादी WMF प्लगिन्स नहीं होंगी मगर यह बुनियादी परीक्षण करवा सकता है।