From 612d82398ff5cd42e15f85edd3d0dfc2a1ec5c77 Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Mon, 3 Feb 2025 17:18:54 +0100 Subject: [PATCH 1/5] [Search] Add search approaches content, rename querying-for-search doc --- .../full-text-filter-tutorial.md | 2 +- .../elasticsearch-reference/search-analyze.md | 2 +- .../search-with-elasticsearch.md | 2 +- ...e-search-api.md => querying-for-search.md} | 2 +- solutions/search/search-approaches.md | 21 +++++++++++++++++-- solutions/toc.yml | 2 +- 6 files changed, 24 insertions(+), 7 deletions(-) rename solutions/search/{querying-for-search-searching-with-the-search-api.md => querying-for-search.md} (96%) diff --git a/raw-migrated-files/elasticsearch/elasticsearch-reference/full-text-filter-tutorial.md b/raw-migrated-files/elasticsearch/elasticsearch-reference/full-text-filter-tutorial.md index e444ebfd0..af33799fd 100644 --- a/raw-migrated-files/elasticsearch/elasticsearch-reference/full-text-filter-tutorial.md +++ b/raw-migrated-files/elasticsearch/elasticsearch-reference/full-text-filter-tutorial.md @@ -196,7 +196,7 @@ At search time, {{es}} defaults to the analyzer defined in the field mapping. In } ``` -1. The `hits` object contains the total number of matching documents and their relation to the total. Refer to [Track total hits](../../../solutions/search/querying-for-search-searching-with-the-search-api.md#track-total-hits) for more details about the `hits` object. +1. The `hits` object contains the total number of matching documents and their relation to the total. Refer to [Track total hits](../../../solutions/search/querying-for-search.md#track-total-hits) for more details about the `hits` object. 2. `max_score` is the highest relevance score among all matching documents. In this example, we only have one matching document. 3. `_score` is the relevance score for a specific document, indicating how well it matches the query. Higher scores indicate better matches. In this example the `max_score` is the same as the `_score`, as there is only one matching document. 4. The title contains both "Fluffy" and "Pancakes", matching our search terms exactly. diff --git a/raw-migrated-files/elasticsearch/elasticsearch-reference/search-analyze.md b/raw-migrated-files/elasticsearch/elasticsearch-reference/search-analyze.md index abfd973dc..23d90b0b5 100644 --- a/raw-migrated-files/elasticsearch/elasticsearch-reference/search-analyze.md +++ b/raw-migrated-files/elasticsearch/elasticsearch-reference/search-analyze.md @@ -29,7 +29,7 @@ Refer to [Query languages](../../../explore-analyze/query-filter.md#search-analy [Query DSL](../../../explore-analyze/query-filter/languages/querydsl.md) is a full-featured JSON-style query language that enables complex searching, filtering, and aggregations. It is the original and most powerful query language for {{es}} today. -The [`_search` endpoint](../../../solutions/search/querying-for-search-searching-with-the-search-api.md) accepts queries written in Query DSL syntax. +The [`_search` endpoint](../../../solutions/search/querying-for-search.md) accepts queries written in Query DSL syntax. #### Search and filter with Query DSL [search-analyze-query-dsl-search-filter] diff --git a/raw-migrated-files/elasticsearch/elasticsearch-reference/search-with-elasticsearch.md b/raw-migrated-files/elasticsearch/elasticsearch-reference/search-with-elasticsearch.md index e65af3f18..3d7b02d0a 100644 --- a/raw-migrated-files/elasticsearch/elasticsearch-reference/search-with-elasticsearch.md +++ b/raw-migrated-files/elasticsearch/elasticsearch-reference/search-with-elasticsearch.md @@ -25,7 +25,7 @@ Vector search To run a search request, you can use the search API or Search Applications. -[Search API](../../../solutions/search/querying-for-search-searching-with-the-search-api.md) +[Search API](../../../solutions/search/querying-for-search.md) : The [search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html) enables you to search and [aggregate](../../../explore-analyze/aggregations.md) data stored in {{es}} using a query language called the [Query DSL](../../../explore-analyze/query-filter/languages/querydsl.md). [Search Applications](../../../solutions/search/applications.md) diff --git a/solutions/search/querying-for-search-searching-with-the-search-api.md b/solutions/search/querying-for-search.md similarity index 96% rename from solutions/search/querying-for-search-searching-with-the-search-api.md rename to solutions/search/querying-for-search.md index a5bbeec6f..a0ad1f9c3 100644 --- a/solutions/search/querying-for-search-searching-with-the-search-api.md +++ b/solutions/search/querying-for-search.md @@ -8,7 +8,7 @@ mapped_urls: - https://www.elastic.co/guide/en/elasticsearch/reference/current/_retrievers_examples.html --- -# Querying for search / searching with the search API +# Query languages for search % What needs to be done: Lift-and-shift diff --git a/solutions/search/search-approaches.md b/solutions/search/search-approaches.md index def3e4863..acdf05e69 100644 --- a/solutions/search/search-approaches.md +++ b/solutions/search/search-approaches.md @@ -1,5 +1,22 @@ # Search approaches -% What needs to be done: Write from scratch +To deliver relevant search results, you need to choose the right search approach for your data and use case. -% Scope notes: ml, full text, hybrid \ No newline at end of file +The following table provides an overview of the fundamental search techniques available in {{es}}: + +| Name | Description | Notes | +|------|-------------|--------| +| [**Full-text search**](full-text.md) | Traditional lexical search with analyzers and relevance tuning | Essential foundation for keyword matching, works out of the box | +| [**Vector search**](vector.md) | Similarity search using numerical vectors | Requires extra setup/resources, ideal for finding similar documents | +| [**Semantic search**](semantic-search.md) | Meaning-based search using natural language understanding | Requires ML models and vector infrastructure | +| [**Hybrid search**](hybrid.md) | Combines lexical and vector/semantic approaches | Best balance for both keyword precision and semantic relevance | +| [**Re-ranking**](semantic-reranking.md) | Post-processing results to improve relevance | Optional ML-based enhancement for fine-tuned relevance | +| [**Geospatial search**](/explore-analyze/geospatial-analysis.md) | Location-based search and spatial relationships | For maps, distance calculations, and shape queries | + +:::::{tip} + Full-text search is a very powerful tool in itself. One of the key strengths of {{es}} is its flexibility, allowing you to start with full-text search and gradually incorporate more complex or resource-intensive approaches over time. +::::: + +## Next step + +Once you've chosen your search approach(es), you'll need to select a query language to implement them. Refer to [query languages for search use cases]() to learn about the available options. \ No newline at end of file diff --git a/solutions/toc.yml b/solutions/toc.yml index 19b34f5ce..276805c92 100644 --- a/solutions/toc.yml +++ b/solutions/toc.yml @@ -588,7 +588,7 @@ toc: children: - file: search/search-approaches/long-running-searches.md - file: search/search-approaches/near-real-time-search.md - - file: search/querying-for-search-searching-with-the-search-api.md + - file: search/querying-for-search.md - file: search/inference-api.md children: - file: search/inference-api/elastic-inference-service-eis.md From 7178547df16285595a7bd5d1f65cc838272eaf1b Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Mon, 3 Feb 2025 17:26:50 +0100 Subject: [PATCH 2/5] Update link --- solutions/search/search-approaches.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/search/search-approaches.md b/solutions/search/search-approaches.md index acdf05e69..2dacb6ccd 100644 --- a/solutions/search/search-approaches.md +++ b/solutions/search/search-approaches.md @@ -19,4 +19,4 @@ The following table provides an overview of the fundamental search techniques av ## Next step -Once you've chosen your search approach(es), you'll need to select a query language to implement them. Refer to [query languages for search use cases]() to learn about the available options. \ No newline at end of file +Once you've chosen your search approach(es), you'll need to select a query language to implement them. Refer to [query languages for search use cases](querying-for-search.md) to learn about the available options. \ No newline at end of file From 409171a5615881b7a6664f115f7e5eeb55defac7 Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Mon, 3 Feb 2025 17:33:33 +0100 Subject: [PATCH 3/5] Fix links --- .../production-guidance/optimize-performance/search-speed.md | 2 +- explore-analyze/aggregations.md | 2 +- explore-analyze/query-filter.md | 2 +- explore-analyze/query-filter/languages.md | 2 +- .../use-case-use-elasticsearch-to-manage-time-series-data.md | 2 +- .../elasticsearch-search-your-data-the-search-api.md | 4 ++-- .../docs-content/serverless/elasticsearch-search-your-data.md | 2 +- .../elasticsearch/elasticsearch-reference/getting-started.md | 2 +- solutions/search/rag/playground-query.md | 2 +- solutions/search/ranking/learning-to-rank-search-usage.md | 2 +- solutions/search/ranking/semantic-reranking.md | 2 +- troubleshoot/elasticsearch/high-jvm-memory-pressure.md | 2 +- 12 files changed, 13 insertions(+), 13 deletions(-) diff --git a/deploy-manage/production-guidance/optimize-performance/search-speed.md b/deploy-manage/production-guidance/optimize-performance/search-speed.md index 3b6dd172b..ed7e3572a 100644 --- a/deploy-manage/production-guidance/optimize-performance/search-speed.md +++ b/deploy-manage/production-guidance/optimize-performance/search-speed.md @@ -424,5 +424,5 @@ The `constant_keyword` is not strictly required for this optimization: it is als ## Default search timeout [_default_search_timeout] -By default, search requests don’t time out. You can set a timeout using the [`search.default_search_timeout`](../../../solutions/search/querying-for-search-searching-with-the-search-api.md#search-timeout) setting. +By default, search requests don’t time out. You can set a timeout using the [`search.default_search_timeout`](../../../solutions/search/querying-for-search-searching.md#search-timeout) setting. diff --git a/explore-analyze/aggregations.md b/explore-analyze/aggregations.md index 6b0cdd288..f4bb5e9b0 100644 --- a/explore-analyze/aggregations.md +++ b/explore-analyze/aggregations.md @@ -21,7 +21,7 @@ An aggregation summarizes your data as metrics, statistics, or other analytics. ## Run an aggregation [run-an-agg] -You can run aggregations as part of a [search](../solutions/search/querying-for-search-searching-with-the-search-api.md) by specifying the [search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html)'s `aggs` parameter. The following search runs a [terms aggregation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html) on `my-field`: +You can run aggregations as part of a [search](../solutions/search/querying-for-search-searching.md) by specifying the [search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html)'s `aggs` parameter. The following search runs a [terms aggregation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html) on `my-field`: ```console GET /my-index-000001/_search diff --git a/explore-analyze/query-filter.md b/explore-analyze/query-filter.md index eda1430d7..dca9781ea 100644 --- a/explore-analyze/query-filter.md +++ b/explore-analyze/query-filter.md @@ -34,7 +34,7 @@ Refer to [Query languages](#search-analyze-query-languages) for a full overview [Query DSL](query-filter/languages/querydsl.md) is a full-featured JSON-style query language that enables complex searching, filtering, and aggregations. It is the original and most powerful query language for {{es}} today. -The [`_search` endpoint](../solutions/search/querying-for-search-searching-with-the-search-api.md) accepts queries written in Query DSL syntax. +The [`_search` endpoint](../solutions/search/querying-for-search-searching.md) accepts queries written in Query DSL syntax. #### Search and filter with Query DSL [search-analyze-query-dsl-search-filter] diff --git a/explore-analyze/query-filter/languages.md b/explore-analyze/query-filter/languages.md index e8e210a66..d3eca557c 100644 --- a/explore-analyze/query-filter/languages.md +++ b/explore-analyze/query-filter/languages.md @@ -34,7 +34,7 @@ Refer to [Query languages](../query-filter.md#search-analyze-query-languages) fo [Query DSL](languages/querydsl.md) is a full-featured JSON-style query language that enables complex searching, filtering, and aggregations. It is the original and most powerful query language for {{es}} today. -The [`_search` endpoint](../../solutions/search/querying-for-search-searching-with-the-search-api.md) accepts queries written in Query DSL syntax. +The [`_search` endpoint](../../solutions/search/querying-for-search-searching.md) accepts queries written in Query DSL syntax. #### Search and filter with Query DSL [search-analyze-query-dsl-search-filter] diff --git a/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md b/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md index 43a7ec6ec..b2978f0b4 100644 --- a/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md +++ b/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md @@ -409,7 +409,7 @@ GET my-data-stream/_search } ``` -{{es}} searches are synchronous by default. Searches across frozen data, long time ranges, or large datasets may take longer. Use the [async search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html#submit-async-search) to run searches in the background. For more search options, see [*The search API*](../solutions/search/querying-for-search-searching-with-the-search-api.md). +{{es}} searches are synchronous by default. Searches across frozen data, long time ranges, or large datasets may take longer. Use the [async search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html#submit-async-search) to run searches in the background. For more search options, see [*The search API*](../solutions/search/querying-for-search-searching.md). ```console POST my-data-stream/_async_search diff --git a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md index 05bd52994..286ec78c1 100644 --- a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md +++ b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md @@ -6,7 +6,7 @@ A search may also contain additional information used to better process its quer You can use the [search API](https://www.elastic.co/docs/api/doc/elasticsearch-serverless/group/endpoint-search) to search and aggregate data stored in {{es}} data streams or indices. -For more information, refer to [the search API overview](../../../solutions/search/querying-for-search-searching-with-the-search-api.md) in the core {{es}} docs. +For more information, refer to [the search API overview](../../../solutions/search/querying-for-search-searching.md) in the core {{es}} docs. ## Query DSL [elasticsearch-search-your-data-the-query-dsl] @@ -20,5 +20,5 @@ The `_search` API’s `query` request body parameter accepts queries written in Retrievers are an alternative to Query DSL that allow you to configure complex retrieval pipelines using a simplified syntax. Retrievers simplify the user experience by allowing entire retrieval pipelines to be configured in a single `_search` API call. -Learn more in the [Retrievers overview](../../../solutions/search/querying-for-search-searching-with-the-search-api.md) in the core {{es}} docs. +Learn more in the [Retrievers overview](../../../solutions/search/querying-for-search-searching.md) in the core {{es}} docs. diff --git a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md index 844f8f547..bdd29e78a 100644 --- a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md +++ b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md @@ -22,7 +22,7 @@ Learn about the various query languages you can use to search your data in the [ The subpages in this section provide some high-level information about selected important search-related topics: -* [The search API](../../../solutions/search/querying-for-search-searching-with-the-search-api.md) +* [The search API](../../../solutions/search/querying-for-search-searching.md) * [K-Nearest Neighbors (KNN) search](../../../solutions/search/vector/knn.md) * [Semantic search](../../../solutions/search/semantic-search.md) diff --git a/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md b/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md index dc2136fe0..7b527150b 100644 --- a/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md +++ b/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md @@ -353,7 +353,7 @@ This allows you to combine explicit and dynamic mappings. Learn more about [mana ## Step 4: Search your index [getting-started-search-data] -Indexed documents are available for search in near real-time, using the [`_search` API](../../../solutions/search/querying-for-search-searching-with-the-search-api.md). +Indexed documents are available for search in near real-time, using the [`_search` API](../../../solutions/search/querying-for-search-searching.md). ### Search all documents [getting-started-search-all-documents] diff --git a/solutions/search/rag/playground-query.md b/solutions/search/rag/playground-query.md index 58ffd981e..f748ae816 100644 --- a/solutions/search/rag/playground-query.md +++ b/solutions/search/rag/playground-query.md @@ -40,7 +40,7 @@ Remember that the next step in the workflow is to send the retrieved documents t [Troubleshooting](playground-troubleshooting.md) provides tips on how to diagnose and fix relevance issues. ::::{note} -Playground uses the [`retriever`](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) syntax for {{es}} queries. Retrievers make it easier to compose and test different retrieval strategies in your search pipelines. Refer to [documentation](../querying-for-search-searching-with-the-search-api.md) for a high level overview of retrievers. +Playground uses the [`retriever`](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) syntax for {{es}} queries. Retrievers make it easier to compose and test different retrieval strategies in your search pipelines. Refer to [documentation](../querying-for-search-searching.md) for a high level overview of retrievers. :::: diff --git a/solutions/search/ranking/learning-to-rank-search-usage.md b/solutions/search/ranking/learning-to-rank-search-usage.md index 5bb839fdd..3195fc7ac 100644 --- a/solutions/search/ranking/learning-to-rank-search-usage.md +++ b/solutions/search/ranking/learning-to-rank-search-usage.md @@ -17,7 +17,7 @@ This feature was introduced in version 8.12.0 and is only available to certain s ## Learning To Rank as a rescorer [learning-to-rank-rescorer] -Once your LTR model is trained and deployed in {{es}}, it can be used as a [rescorer](https://www.elastic.co/guide/en/elasticsearch/reference/current/filter-search-results.html#rescore) in the [search API](../querying-for-search-searching-with-the-search-api.md): +Once your LTR model is trained and deployed in {{es}}, it can be used as a [rescorer](https://www.elastic.co/guide/en/elasticsearch/reference/current/filter-search-results.html#rescore) in the [search API](../querying-for-search-searching.md): ```console GET my-index/_search diff --git a/solutions/search/ranking/semantic-reranking.md b/solutions/search/ranking/semantic-reranking.md index 3e953f694..46be0cf80 100644 --- a/solutions/search/ranking/semantic-reranking.md +++ b/solutions/search/ranking/semantic-reranking.md @@ -133,7 +133,7 @@ POST _search ## Learn more [semantic-reranking-learn-more] * Read the [retriever reference documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) for syntax and implementation details -* Learn more about the [retrievers](../querying-for-search-searching-with-the-search-api.md) abstraction +* Learn more about the [retrievers](../querying-for-search-searching.md) abstraction * Learn more about the Elastic [Inference APIs](https://www.elastic.co/guide/en/elasticsearch/reference/current/inference-apis.html) * Check out our [Python notebook](https://github.com/elastic/elasticsearch-labs/blob/main/notebooks/integrations/cohere/cohere-elasticsearch.ipynb) for using Cohere with {es} diff --git a/troubleshoot/elasticsearch/high-jvm-memory-pressure.md b/troubleshoot/elasticsearch/high-jvm-memory-pressure.md index 0cafaa650..e5064297c 100644 --- a/troubleshoot/elasticsearch/high-jvm-memory-pressure.md +++ b/troubleshoot/elasticsearch/high-jvm-memory-pressure.md @@ -78,7 +78,7 @@ Expensive searches may have a large [`size` argument](https://www.elastic.co/gui * Lower the `size` limit using the [`index.max_result_window`](https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#index-max-result-window) index setting. * Decrease the maximum number of allowed aggregation buckets using the [search.max_buckets](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-settings.html#search-settings-max-buckets) cluster setting. * Disable expensive queries using the [`search.allow_expensive_queries`](../../explore-analyze/query-filter/languages/querydsl.md#query-dsl-allow-expensive-queries) cluster setting. -* Set a default search timeout using the [`search.default_search_timeout`](../../solutions/search/querying-for-search-searching-with-the-search-api.md#search-timeout) cluster setting. +* Set a default search timeout using the [`search.default_search_timeout`](../../solutions/search/querying-for-search-searching.md#search-timeout) cluster setting. ```console PUT _settings From 20c32d0c392cb7362b7302c1a38658a19ba9ed9e Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Mon, 3 Feb 2025 17:35:12 +0100 Subject: [PATCH 4/5] Fix them really --- .../production-guidance/optimize-performance/search-speed.md | 2 +- explore-analyze/aggregations.md | 2 +- explore-analyze/query-filter.md | 2 +- explore-analyze/query-filter/languages.md | 2 +- .../use-case-use-elasticsearch-to-manage-time-series-data.md | 2 +- .../elasticsearch-search-your-data-the-search-api.md | 4 ++-- .../docs-content/serverless/elasticsearch-search-your-data.md | 2 +- .../elasticsearch/elasticsearch-reference/getting-started.md | 2 +- solutions/search/rag/playground-query.md | 2 +- solutions/search/ranking/learning-to-rank-search-usage.md | 2 +- solutions/search/ranking/semantic-reranking.md | 2 +- troubleshoot/elasticsearch/high-jvm-memory-pressure.md | 2 +- 12 files changed, 13 insertions(+), 13 deletions(-) diff --git a/deploy-manage/production-guidance/optimize-performance/search-speed.md b/deploy-manage/production-guidance/optimize-performance/search-speed.md index ed7e3572a..8fd0c3a73 100644 --- a/deploy-manage/production-guidance/optimize-performance/search-speed.md +++ b/deploy-manage/production-guidance/optimize-performance/search-speed.md @@ -424,5 +424,5 @@ The `constant_keyword` is not strictly required for this optimization: it is als ## Default search timeout [_default_search_timeout] -By default, search requests don’t time out. You can set a timeout using the [`search.default_search_timeout`](../../../solutions/search/querying-for-search-searching.md#search-timeout) setting. +By default, search requests don’t time out. You can set a timeout using the [`search.default_search_timeout`](../../../solutions/search/querying-for-search.md#search-timeout) setting. diff --git a/explore-analyze/aggregations.md b/explore-analyze/aggregations.md index f4bb5e9b0..92d7dbb64 100644 --- a/explore-analyze/aggregations.md +++ b/explore-analyze/aggregations.md @@ -21,7 +21,7 @@ An aggregation summarizes your data as metrics, statistics, or other analytics. ## Run an aggregation [run-an-agg] -You can run aggregations as part of a [search](../solutions/search/querying-for-search-searching.md) by specifying the [search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html)'s `aggs` parameter. The following search runs a [terms aggregation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html) on `my-field`: +You can run aggregations as part of a [search](../solutions/search/querying-for-search.md) by specifying the [search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html)'s `aggs` parameter. The following search runs a [terms aggregation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html) on `my-field`: ```console GET /my-index-000001/_search diff --git a/explore-analyze/query-filter.md b/explore-analyze/query-filter.md index dca9781ea..ec370a8f3 100644 --- a/explore-analyze/query-filter.md +++ b/explore-analyze/query-filter.md @@ -34,7 +34,7 @@ Refer to [Query languages](#search-analyze-query-languages) for a full overview [Query DSL](query-filter/languages/querydsl.md) is a full-featured JSON-style query language that enables complex searching, filtering, and aggregations. It is the original and most powerful query language for {{es}} today. -The [`_search` endpoint](../solutions/search/querying-for-search-searching.md) accepts queries written in Query DSL syntax. +The [`_search` endpoint](../solutions/search/querying-for-search.md) accepts queries written in Query DSL syntax. #### Search and filter with Query DSL [search-analyze-query-dsl-search-filter] diff --git a/explore-analyze/query-filter/languages.md b/explore-analyze/query-filter/languages.md index d3eca557c..5a91d75c5 100644 --- a/explore-analyze/query-filter/languages.md +++ b/explore-analyze/query-filter/languages.md @@ -34,7 +34,7 @@ Refer to [Query languages](../query-filter.md#search-analyze-query-languages) fo [Query DSL](languages/querydsl.md) is a full-featured JSON-style query language that enables complex searching, filtering, and aggregations. It is the original and most powerful query language for {{es}} today. -The [`_search` endpoint](../../solutions/search/querying-for-search-searching.md) accepts queries written in Query DSL syntax. +The [`_search` endpoint](../../solutions/search/querying-for-search.md) accepts queries written in Query DSL syntax. #### Search and filter with Query DSL [search-analyze-query-dsl-search-filter] diff --git a/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md b/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md index b2978f0b4..175d8dd6a 100644 --- a/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md +++ b/manage-data/use-case-use-elasticsearch-to-manage-time-series-data.md @@ -409,7 +409,7 @@ GET my-data-stream/_search } ``` -{{es}} searches are synchronous by default. Searches across frozen data, long time ranges, or large datasets may take longer. Use the [async search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html#submit-async-search) to run searches in the background. For more search options, see [*The search API*](../solutions/search/querying-for-search-searching.md). +{{es}} searches are synchronous by default. Searches across frozen data, long time ranges, or large datasets may take longer. Use the [async search API](https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html#submit-async-search) to run searches in the background. For more search options, see [*The search API*](../solutions/search/querying-for-search.md). ```console POST my-data-stream/_async_search diff --git a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md index 286ec78c1..d4fbecacd 100644 --- a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md +++ b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data-the-search-api.md @@ -6,7 +6,7 @@ A search may also contain additional information used to better process its quer You can use the [search API](https://www.elastic.co/docs/api/doc/elasticsearch-serverless/group/endpoint-search) to search and aggregate data stored in {{es}} data streams or indices. -For more information, refer to [the search API overview](../../../solutions/search/querying-for-search-searching.md) in the core {{es}} docs. +For more information, refer to [the search API overview](../../../solutions/search/querying-for-search.md) in the core {{es}} docs. ## Query DSL [elasticsearch-search-your-data-the-query-dsl] @@ -20,5 +20,5 @@ The `_search` API’s `query` request body parameter accepts queries written in Retrievers are an alternative to Query DSL that allow you to configure complex retrieval pipelines using a simplified syntax. Retrievers simplify the user experience by allowing entire retrieval pipelines to be configured in a single `_search` API call. -Learn more in the [Retrievers overview](../../../solutions/search/querying-for-search-searching.md) in the core {{es}} docs. +Learn more in the [Retrievers overview](../../../solutions/search/querying-for-search.md) in the core {{es}} docs. diff --git a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md index bdd29e78a..6618f898f 100644 --- a/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md +++ b/raw-migrated-files/docs-content/serverless/elasticsearch-search-your-data.md @@ -22,7 +22,7 @@ Learn about the various query languages you can use to search your data in the [ The subpages in this section provide some high-level information about selected important search-related topics: -* [The search API](../../../solutions/search/querying-for-search-searching.md) +* [The search API](../../../solutions/search/querying-for-search.md) * [K-Nearest Neighbors (KNN) search](../../../solutions/search/vector/knn.md) * [Semantic search](../../../solutions/search/semantic-search.md) diff --git a/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md b/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md index 7b527150b..ac106818f 100644 --- a/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md +++ b/raw-migrated-files/elasticsearch/elasticsearch-reference/getting-started.md @@ -353,7 +353,7 @@ This allows you to combine explicit and dynamic mappings. Learn more about [mana ## Step 4: Search your index [getting-started-search-data] -Indexed documents are available for search in near real-time, using the [`_search` API](../../../solutions/search/querying-for-search-searching.md). +Indexed documents are available for search in near real-time, using the [`_search` API](../../../solutions/search/querying-for-search.md). ### Search all documents [getting-started-search-all-documents] diff --git a/solutions/search/rag/playground-query.md b/solutions/search/rag/playground-query.md index f748ae816..65b70854a 100644 --- a/solutions/search/rag/playground-query.md +++ b/solutions/search/rag/playground-query.md @@ -40,7 +40,7 @@ Remember that the next step in the workflow is to send the retrieved documents t [Troubleshooting](playground-troubleshooting.md) provides tips on how to diagnose and fix relevance issues. ::::{note} -Playground uses the [`retriever`](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) syntax for {{es}} queries. Retrievers make it easier to compose and test different retrieval strategies in your search pipelines. Refer to [documentation](../querying-for-search-searching.md) for a high level overview of retrievers. +Playground uses the [`retriever`](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) syntax for {{es}} queries. Retrievers make it easier to compose and test different retrieval strategies in your search pipelines. Refer to [documentation](../querying-for-search.md) for a high level overview of retrievers. :::: diff --git a/solutions/search/ranking/learning-to-rank-search-usage.md b/solutions/search/ranking/learning-to-rank-search-usage.md index 3195fc7ac..a33f56627 100644 --- a/solutions/search/ranking/learning-to-rank-search-usage.md +++ b/solutions/search/ranking/learning-to-rank-search-usage.md @@ -17,7 +17,7 @@ This feature was introduced in version 8.12.0 and is only available to certain s ## Learning To Rank as a rescorer [learning-to-rank-rescorer] -Once your LTR model is trained and deployed in {{es}}, it can be used as a [rescorer](https://www.elastic.co/guide/en/elasticsearch/reference/current/filter-search-results.html#rescore) in the [search API](../querying-for-search-searching.md): +Once your LTR model is trained and deployed in {{es}}, it can be used as a [rescorer](https://www.elastic.co/guide/en/elasticsearch/reference/current/filter-search-results.html#rescore) in the [search API](../querying-for-search.md): ```console GET my-index/_search diff --git a/solutions/search/ranking/semantic-reranking.md b/solutions/search/ranking/semantic-reranking.md index 46be0cf80..9c68deefe 100644 --- a/solutions/search/ranking/semantic-reranking.md +++ b/solutions/search/ranking/semantic-reranking.md @@ -133,7 +133,7 @@ POST _search ## Learn more [semantic-reranking-learn-more] * Read the [retriever reference documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/retriever.html) for syntax and implementation details -* Learn more about the [retrievers](../querying-for-search-searching.md) abstraction +* Learn more about the [retrievers](../querying-for-search.md) abstraction * Learn more about the Elastic [Inference APIs](https://www.elastic.co/guide/en/elasticsearch/reference/current/inference-apis.html) * Check out our [Python notebook](https://github.com/elastic/elasticsearch-labs/blob/main/notebooks/integrations/cohere/cohere-elasticsearch.ipynb) for using Cohere with {es} diff --git a/troubleshoot/elasticsearch/high-jvm-memory-pressure.md b/troubleshoot/elasticsearch/high-jvm-memory-pressure.md index e5064297c..3ada700bf 100644 --- a/troubleshoot/elasticsearch/high-jvm-memory-pressure.md +++ b/troubleshoot/elasticsearch/high-jvm-memory-pressure.md @@ -78,7 +78,7 @@ Expensive searches may have a large [`size` argument](https://www.elastic.co/gui * Lower the `size` limit using the [`index.max_result_window`](https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#index-max-result-window) index setting. * Decrease the maximum number of allowed aggregation buckets using the [search.max_buckets](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-settings.html#search-settings-max-buckets) cluster setting. * Disable expensive queries using the [`search.allow_expensive_queries`](../../explore-analyze/query-filter/languages/querydsl.md#query-dsl-allow-expensive-queries) cluster setting. -* Set a default search timeout using the [`search.default_search_timeout`](../../solutions/search/querying-for-search-searching.md#search-timeout) cluster setting. +* Set a default search timeout using the [`search.default_search_timeout`](../../solutions/search/querying-for-search.md#search-timeout) cluster setting. ```console PUT _settings From c83c09f82d8a3d8acf2368362f8a9a262be25657 Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Mon, 3 Feb 2025 17:48:01 +0100 Subject: [PATCH 5/5] More fixes --- solutions/search/search-approaches.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/solutions/search/search-approaches.md b/solutions/search/search-approaches.md index 2dacb6ccd..849efea1f 100644 --- a/solutions/search/search-approaches.md +++ b/solutions/search/search-approaches.md @@ -9,8 +9,8 @@ The following table provides an overview of the fundamental search techniques av | [**Full-text search**](full-text.md) | Traditional lexical search with analyzers and relevance tuning | Essential foundation for keyword matching, works out of the box | | [**Vector search**](vector.md) | Similarity search using numerical vectors | Requires extra setup/resources, ideal for finding similar documents | | [**Semantic search**](semantic-search.md) | Meaning-based search using natural language understanding | Requires ML models and vector infrastructure | -| [**Hybrid search**](hybrid.md) | Combines lexical and vector/semantic approaches | Best balance for both keyword precision and semantic relevance | -| [**Re-ranking**](semantic-reranking.md) | Post-processing results to improve relevance | Optional ML-based enhancement for fine-tuned relevance | +| [**Hybrid search**](hybrid-search.md) | Combines lexical and vector/semantic approaches | Best balance for both keyword precision and semantic relevance | +| [**Re-ranking**](ranking/semantic-reranking.md) | Post-processing results to improve relevance | Optional ML-based enhancement for fine-tuned relevance | | [**Geospatial search**](/explore-analyze/geospatial-analysis.md) | Location-based search and spatial relationships | For maps, distance calculations, and shape queries | :::::{tip}