बुनियादी खोज क्वेरीज़ Elasticsearch: एक व्यापक मार्गदर्शिका

कीवर्ड-आधारित क्वेरी(Match Query)

मैच क्वेरी का उपयोग विशिष्ट कीवर्ड वाले दस्तावेज़ों को खोजने के लिए किया जाता है। यह उन दस्तावेज़ों को लौटाएगा जिनमें कम से कम एक संबंधित कीवर्ड होगा।

उदाहरण: कीवर्ड वाले नाम वाले उत्पाद laptop  ढूंढें products Index

GET /products/_search  
{  
  "query": {  
    "match": {  
      "name": "laptop"  
    }  
  }  
}  

 

सभी कीवर्ड शामिल होने चाहिए(Match Phrase Query)

मिलान वाक्यांश क्वेरी के लिए आवश्यक है कि क्वेरी में सभी कीवर्ड दस्तावेज़ पाठ के भीतर लगातार और सही क्रम में दिखाई दें।

उदाहरण: वाक्यांश वाले विवरण वाले उत्पाद ढूंढें HP laptop

GET /products/_search  
{  
  "query": {  
    "match_phrase": {  
      "description": "HP laptop"  
    }  
  }  
}  

 

संपूर्ण वाक्यांश उपसर्ग शामिल होना चाहिए(Match Phrase Prefix Query)

मिलान वाक्यांश उपसर्ग क्वेरी मिलान वाक्यांश के समान है, लेकिन यह अंतिम कीवर्ड के आंशिक मिलान की अनुमति देता है।

उदाहरण: से शुरू होने वाले विवरण वाले उत्पाद ढूंढें laptop

GET /products/_search  
{  
  "query": {  
    "match_phrase_prefix": {  
      "description": "laptop"  
    }  
  }  
}  

 

टर्म-आधारित क्वेरी(टर्म क्वेरी)

टर्म क्वेरी का उपयोग निर्दिष्ट फ़ील्ड वाले सटीक मान वाले दस्तावेज़ों को खोजने के लिए किया जाता है।

उदाहरण: category मान वाले फ़ील्ड वाले उत्पाद ढूंढें laptop

GET /products/_search  
{  
  "query": {  
    "term": {  
      "category": "laptop"  
    }  
  }  
}  

 

रेंज-आधारित क्वेरी(Range Query)

रेंज क्वेरी एक निर्दिष्ट सीमा के भीतर फ़ील्ड मान वाले दस्तावेज़ों को खोजने में मदद करती है।

उदाहरण: 500 और 1000 के बीच कीमत वाले उत्पाद ढूंढें।

GET /products/_search  
{  
  "query": {  
    "range": {  
      "price": {  
        "gte": 500,  
        "lte": 1000  
      }  
    }  
  }  
}  

 

टर्म लेवल क्वेरी

टर्म लेवल क्वेरीज़ सटीक, प्रीफ़िक्स, रेंज, वाइल्डकार्ड और फ़ज़ी क्वेरीज़ जैसी विशिष्ट स्थितियों के आधार पर दस्तावेज़ों की खोज करने की अनुमति देती हैं।

उदाहरण: 500 और 1000 से शुरू होने वाले नाम laptop और कीमत वाले उत्पाद ढूंढें।

GET /products/_search  
{  
  "query": {  
    "bool": {  
      "must": [  
        {  
          "prefix": {  
            "name": "laptop"  
          }  
        },  
        {  
          "range": {  
            "price": {  
              "gte": 500,  
              "lte": 1000  
            }  
          }  
        }  
      ]  
    }  
  }  
}  

 

Full-Text जिज्ञासा

Full-Text क्वेरीज़ समान शब्दों या समानार्थक शब्दों को खोजने के लिए टेक्स्ट विश्लेषण एल्गोरिदम का उपयोग करके टेक्स्ट फ़ील्ड को खोजने की अनुमति देती हैं।

computer  उदाहरण: या तो युक्त विवरण वाले उत्पाद ढूंढें laptop

GET /products/_search  
{  
  "query": {  
    "match": {  
      "description": "computer laptop"  
    }  
  }  
}  

 

बूलियन क्वेरी

Boolean सटीक खोज परिणाम प्राप्त करने के लिए क्वेरीज़ विभिन्न खोज स्थितियों के साथ कई उप-क्वेरीज़ को संयोजित करने की अनुमति देती हैं, जैसे कि सभी शामिल होने चाहिए, कम से कम एक होना चाहिए, या शामिल नहीं होना चाहिए।

 उदाहरण: 500 और 1000 के बीच मूल्य और मूल्य category वाले उत्पाद ढूंढें । laptop

GET /products/_search  
{  
  "query": {  
    "bool": {  
      "must": [  
        {  
          "term": {  
            "category": "laptop"  
          }  
        },  
        {  
          "range": {  
            "price": {  
              "gte": 500,  
              "lte": 1000  
            }  
          }  
        }  
      ]  
    }  
  }  
}  

 

Elasticsearch ये प्रत्येक क्वेरी प्रकार के लिए सचित्र उदाहरणों के साथ मूल खोज क्वेरी हैं । का उपयोग करते समय Elasticsearch, आप डेटा को लचीले ढंग से और कुशलता से खोजने के लिए इन प्रश्नों को जोड़ सकते हैं।