Link Search Menu Expand Document Documentation Menu

Search

OpenSearch provides many features for customizing your search use cases and improving search relevance.

Search methods

OpenSearch supports the following search methods.

OpenSearch supports keyword (BM25) search, which searches the document corpus for words that appear in the query.

OpenSearch supports the following machine learning (ML)-powered search methods:

  • Vector search

    • k-NN search: Searches for the k-nearest neighbors to a search term across an index of vectors.
  • Neural search: Neural search facilitates generating vector embeddings at ingestion time and searching them at search time. Neural search lets you integrate ML models into your search and serves as a framework for implementing other search methods. The following search methods are built on top of neural search:

    • Semantic search: Considers the meaning of the words in the search context. Uses dense retrieval based on text embedding models to search text data.

    • Multimodal search: Uses multimodal embedding models to search text and image data.

    • Neural sparse search: Uses sparse retrieval based on sparse embedding models to search text data.

    • Hybrid search: Combines traditional search and vector search to improve search relevance.

    • Conversational search: Implements a retrieval-augmented generative search.

Query languages

In OpenSearch, you can use the following query languages to search your data:

  • Query domain-specific language (DSL): The primary OpenSearch query language that supports creating complex, fully customizable queries.

  • Query string query language: A scaled-down query language that you can use in a query parameter of a search request or in OpenSearch Dashboards.

  • SQL: A traditional query language that bridges the gap between traditional relational database concepts and the flexibility of OpenSearch’s document-oriented data storage.

  • Piped Processing Language (PPL): The primary language used with observability in OpenSearch. PPL uses a pipe syntax that chains commands into a query.

  • Dashboards Query Language (DQL): A simple text-based query language for filtering data in OpenSearch Dashboards.

Search performance

OpenSearch offers several ways to improve search performance:

Search relevance

OpenSearch provides the following search relevance features:

  • Compare Search Results: A search comparison tool in OpenSearch Dashboards that you can use to compare results from two queries side by side.

  • Querqy: Offers query rewriting capability.

  • User Behavior Insights: Links user behavior to user queries to improve search quality.

Search results

OpenSearch supports the following commonly used operations on search results:

Search pipelines

You can process search queries and search results with search pipelines.

350 characters left

Have a question? .

Want to contribute? or .