एलेस्टिक्स खोज - एपीआई खोजें
इस एपीआई का उपयोग एलिस्टिक्स खोज में सामग्री खोजने के लिए किया जाता है। एक उपयोगकर्ता पैरामीटर के रूप में क्वेरी स्ट्रिंग के साथ एक अनुरोध प्राप्त करके खोज कर सकता है या वे पोस्ट अनुरोध के संदेश निकाय में एक क्वेरी पोस्ट कर सकते हैं। मुख्य रूप से सभी खोज एपीआईएस बहु-सूचकांक, बहु-प्रकार हैं।
बहु सूचकांक
इलास्टिसर्च हमें सभी सूचकांकों में या कुछ विशिष्ट सूचकांकों में मौजूद दस्तावेजों की खोज करने की अनुमति देता है। उदाहरण के लिए, यदि हमें सभी दस्तावेजों को एक नाम के साथ खोजना है जिसमें केंद्रीय शामिल है, तो हम यहां दिखाए गए अनुसार कर सकते हैं -
GET /_all/_search?q=city:paprola
उपरोक्त कोड चलाने पर, हमें निम्नलिखित प्रतिक्रिया मिलती है -
{
"took" : 33,
"timed_out" : false,
"_shards" : {
"total" : 7,
"successful" : 7,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 1,
"relation" : "eq"
},
"max_score" : 0.9808292,
"hits" : [
{
"_index" : "schools",
"_type" : "school",
"_id" : "5",
"_score" : 0.9808292,
"_source" : {
"name" : "Central School",
"description" : "CBSE Affiliation",
"street" : "Nagan",
"city" : "paprola",
"state" : "HP",
"zip" : "176115",
"location" : [
31.8955385,
76.8380405
],
"fees" : 2200,
"tags" : [
"Senior Secondary",
"beautiful campus"
],
"rating" : "3.3"
}
}
]
}
}
यूआरआई सर्च
यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर का उपयोग करके एक खोज ऑपरेशन में कई मापदंडों को पारित किया जा सकता है -
S.No | पैरामीटर और विवरण |
---|---|
1 | Q इस पैरामीटर का उपयोग क्वेरी स्ट्रिंग को निर्दिष्ट करने के लिए किया जाता है। |
2 | lenient इस पैरामीटर का उपयोग क्वेरी स्ट्रिंग निर्दिष्ट करने के लिए किया जाता है। इस पैरामीटर को सही पर सेट करने से आधारित त्रुटियों को अनदेखा किया जा सकता है। यह डिफ़ॉल्ट रूप से गलत है। |
3 | fields इस पैरामीटर का उपयोग क्वेरी स्ट्रिंग को निर्दिष्ट करने के लिए किया जाता है। |
4 | sort हम इस पैरामीटर का उपयोग करके क्रमबद्ध परिणाम प्राप्त कर सकते हैं, इस पैरामीटर के लिए संभावित मान फिल्नाम, फ़ील्डनाम: asc / fieldname: desc है |
5 | timeout हम इस पैरामीटर का उपयोग करके खोज समय को सीमित कर सकते हैं और प्रतिक्रिया में केवल उस निर्दिष्ट समय में हिट शामिल हैं। डिफ़ॉल्ट रूप से, कोई टाइमआउट नहीं है। |
6 | terminate_after हम प्रत्येक शार्द के लिए निर्दिष्ट दस्तावेजों की प्रतिक्रिया को प्रतिबंधित कर सकते हैं, जिस पर पहुंचने पर क्वेरी जल्दी समाप्त हो जाएगी। डिफ़ॉल्ट रूप से, कोई terminate_after नहीं है। |
7 | from वापसी के हिट के सूचकांक से शुरू। चूक ०। |
8 | size यह लौटने के लिए हिट की संख्या को दर्शाता है। 10 से चूक। |
शारीरिक खोज का अनुरोध करें
हम अनुरोध बॉडी में क्वेरी डीएसएल का उपयोग करके क्वेरी भी निर्दिष्ट कर सकते हैं और पिछले अध्यायों में पहले से दिए गए कई उदाहरण हैं। ऐसा ही एक उदाहरण यहाँ दिया गया है -
POST /schools/_search
{
"query":{
"query_string":{
"query":"up"
}
}
}
उपरोक्त कोड चलाने पर, हमें निम्नलिखित प्रतिक्रिया मिलती है -
{
"took" : 11,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 1,
"relation" : "eq"
},
"max_score" : 0.47000363,
"hits" : [
{
"_index" : "schools",
"_type" : "school",
"_id" : "4",
"_score" : 0.47000363,
"_source" : {
"name" : "City Best School",
"description" : "ICSE",
"street" : "West End",
"city" : "Meerut",
"state" : "UP",
"zip" : "250002",
"location" : [
28.9926174,
77.692485
],
"fees" : 3500,
"tags" : [
"fully computerized"
],
"rating" : "4.5"
}
}
]
}
}