దీనిలో ప్రాథమిక శోధన ప్రశ్నలు 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  
      }  
    }  
  }  
}  

 

టర్మ్ స్థాయి ప్రశ్న

ఖచ్చితమైన, ఉపసర్గ, పరిధి, వైల్డ్‌కార్డ్ మరియు అస్పష్టమైన ప్రశ్నల వంటి నిర్దిష్ట పరిస్థితుల ఆధారంగా పత్రాల కోసం శోధించడానికి టర్మ్ స్థాయి ప్రశ్నలు అనుమతిస్తాయి.

ఉదాహరణ: పేరుతో మొదలయ్యే ఉత్పత్తులను laptop మరియు 500 మరియు 1000 మధ్య ధరలను కనుగొనండి.

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 ఖచ్చితమైన శోధన ఫలితాలను సాధించడానికి అన్నింటినీ కలిగి ఉండాలి, కనీసం ఒకదానిని కలిగి ఉండాలి లేదా కలిగి ఉండకూడదు వంటి విభిన్న శోధన పరిస్థితులతో బహుళ ఉప-ప్రశ్నలను కలపడానికి ప్రశ్నలు అనుమతిస్తాయి.

category ఉదాహరణ: 500 మరియు 1000 మధ్య ఉన్న ఉత్పత్తులను laptop  మరియు ధరలను కనుగొనండి.

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

 

Elasticsearch ప్రతి ప్రశ్న రకానికి ఉదాహరణలతో పాటుగా ఇవి ప్రాథమిక శోధన ప్రశ్నలు. ఉపయోగిస్తున్నప్పుడు Elasticsearch, మీరు డేటా కోసం సులభంగా మరియు సమర్ధవంతంగా శోధించడానికి ఈ ప్రశ్నలను కలపవచ్చు.