Search
OpenSearch provides many features for customizing your search use cases and improving search relevance.
Search methods
OpenSearch supports the following search methods:
-  Traditional lexical search - Keyword (BM25) search: Searches the document corpus for words that appear in the query.
 
-  Machine learning (ML)-powered search -  Vector search - k-NN search: Searches for 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:
-  Asynchronous search: Runs resource-intensive queries asynchronously. 
-  Concurrent segment search: Searches segments concurrently. 
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. 
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.