Searching and Querying Data 🧩

Advanced

Elasticsearch provides powerful query DSL (Domain Specific Language) to perform precise searches. Example: Searching for users named 'Jane':

GET /my_index/_search
{
  "query": {
    "match": { "name": "Jane" }
  }
}

Common queries include:

  • Match: Full-text search.
  • Term: Exact value matching.
  • Range: Numeric or date ranges.
  • Bool: Combining multiple query conditions.

Sample query with filters:

GET /my_index/_search
{
  "query": {
    "bool": {
      "must": [
        { "match": { "name": "Jane" } }
      ],
      "filter": [
        { "range": { "age": { "gte": 25, "lte": 35 } } }
      ]
    }
  }
}

Effective querying is central to leveraging Elasticsearch’s full potential for real-time data insights.