Browse Source

[DOCS] Remove search request body page (#60972)

James Rodewig 5 years ago
parent
commit
9b9e0b7b16

+ 1 - 1
docs/java-rest/high-level/document/multi-get.asciidoc

@@ -65,7 +65,7 @@ include-tagged::{doc-tests-file}[{api}-request-item-extras]
 <2> Version
 <3> Version type
 
-{ref}/search-request-body.html#request-body-search-preference[`preference`],
+{ref}/search-your-data.html#search-preference[`preference`],
 {ref}/docs-get.html#realtime[`realtime`]
 and
 {ref}/docs-get.html#get-refresh[`refresh`] can be set on the main request but

+ 1 - 1
docs/reference/how-to/recipes/scoring.asciidoc

@@ -29,7 +29,7 @@ are different too.
 
 The recommended way to work around this issue is to use a string that identifies
 the user that is logged is (a user id or session id for instance) as a
-<<request-body-search-preference,preference>>. This ensures that all queries of a
+<<search-preference,preference>>. This ensures that all queries of a
 given user are always going to hit the same shards, so scores remain more
 consistent across queries.
 

+ 41 - 18
docs/reference/redirects.asciidoc

@@ -81,7 +81,7 @@ See <<highlighting>>.
 
 [role="exclude",id="search-request-index-boost"]
 === Index boost parameter for request body search API
-See <<request-body-search-index-boost>>.
+See <<index-boost>>.
 
 [role="exclude",id="search-request-inner-hits"]
 === Inner hits parameter for request body search API
@@ -101,7 +101,7 @@ See <<post-filter>>.
 
 [role="exclude",id="search-request-preference"]
 === Preference parameter for request body search API
-See <<request-body-search-preference>>.
+See <<search-preference>>.
 
 [role="exclude",id="search-request-query"]
 === Query parameter for request body search API
@@ -109,7 +109,7 @@ See <<request-body-search-query>>.
 
 [role="exclude",id="search-request-rescore"]
 === Rescoring parameter for request body search API
-See <<request-body-search-rescore>>.
+See <<rescore>>.
 
 [role="exclude",id="search-request-script-fields"]
 === Script fields parameter for request body search API
@@ -125,11 +125,11 @@ See <<search-after>>.
 
 [role="exclude",id="search-request-search-type"]
 === Search type parameter for request body search API
-See <<request-body-search-search-type>>.
+See <<search-type>>.
 
 [role="exclude",id="search-request-seq-no-primary-term"]
 === Sequence numbers and primary terms parameter for request body search API
-See <<request-body-search-search-type>>.
+See <<optimistic-concurrency-control>>.
 
 [role="exclude",id="search-request-sort"]
 === Sort parameter for request body search API
@@ -146,7 +146,7 @@ See <<stored-fields>>.
 
 [role="exclude",id="search-request-track-total-hits"]
 === Track total hits parameter for request body search API
-See <<request-body-search-track-total-hits>>.
+See <<track-total-hits>>.
 
 [role="exclude",id="search-request-version"]
 === Version parameter for request body search API
@@ -981,7 +981,6 @@ See <<eql-syntax-limitations>>.
 
 See <<eql-required-fields>>.
 
-////
 [role="exclude",id="search-request-body"]
 === Request body search
 
@@ -989,13 +988,18 @@ This page has been removed.
 
 For search API reference documentation, see <<search-search>>.
 
-For search examples, see <<run-a-search>>.
+For search examples, see <<search-your-data>>.
 
 [role="exclude",id="request-body-search-docvalue-fields"]
 ==== Doc value fields
 
 See <<docvalue-fields, doc value fields>>.
 
+[role="exclude",id="_fast_check_for_any_matching_docs"]
+==== Fast check for any matching docs
+
+See <<quickly-check-for-matching-docs>>.
+
 [role="exclude",id="request-body-search-collapse"]
 ==== Field collapsing
 
@@ -1016,26 +1020,36 @@ See <<highlighting>>.
 
 See <<how-es-highlighters-work-internally>>.
 
+[role="exclude",id="request-body-search-index-boost"]
+==== Index boost
+See <<index-boost>>.
+
 [role="exclude",id="request-body-search-inner-hits"]
-=== Inner hits
+==== Inner hits
 See <<inner-hits>>.
 
 [role="exclude",id="request-body-search-min-score"]
-=== `min_score`
-See <<search-api-min-score>>.
+==== `min_score`
+
+See the <<search-api-min-score,`min_score`>> parameter.
 
 [role="exclude",id="request-body-search-queries-and-filters"]
-=== Named queries
+==== Named queries
 
-See <<named-queries>.
+See <<named-queries>>.
 
 [role="exclude",id="request-body-search-post-filter"]
-=== Post filter
+==== Post filter
 
 See <<post-filter>>.
 
+[role="exclude",id="request-body-search-preference"]
+==== Preference
+
+See <<search-preference>>.
+
 [role="exclude",id="request-body-search-rescore"]
-=== Rescoring
+==== Rescoring
 
 See <<rescore>>.
 
@@ -1050,12 +1064,12 @@ See <<script-fields>>.
 See <<scroll-search-results>>.
 
 [[_clear_scroll_api]]
-===== Clear scroll API
+==== Clear scroll API
 
 See <<clear-scroll-api>>.
 
 [[sliced-scroll]]
-===== Sliced scroll
+==== Sliced scroll
 
 See <<slice-scroll>>.
 
@@ -1064,6 +1078,11 @@ See <<slice-scroll>>.
 
 See <<search-after>>.
 
+[role="exclude",id="request-body-search-search-type"]
+==== Search type
+
+See <<search-type>>.
+
 [role="exclude",id="request-body-search-sort"]
 ==== Sort
 
@@ -1078,4 +1097,8 @@ See <<source-filtering>>.
 ==== Stored fields
 
 See <<stored-fields>>.
-////
+
+[role="exclude",id="request-body-search-track-total-hits"]
+==== Track total hits
+
+See <<track-total-hits>>.

+ 0 - 2
docs/reference/search.asciidoc

@@ -154,8 +154,6 @@ high). This default value is `5`.
 
 include::search/search.asciidoc[]
 
-include::search/request-body.asciidoc[]
-
 include::search/async-search.asciidoc[]
 
 include::search/scroll-api.asciidoc[]

+ 60 - 0
docs/reference/search/quickly-check-for-matching-docs.asciidoc

@@ -0,0 +1,60 @@
+[discrete]
+[[quickly-check-for-matching-docs]]
+=== Quickly check for matching docs
+
+If you only want to know if there are any documents matching a
+specific query, you can set the `size` to `0` to indicate that we are not
+interested in the search results. You can also set `terminate_after` to `1`
+to indicate that the query execution can be terminated whenever the first
+matching document was found (per shard).
+
+[source,console]
+--------------------------------------------------
+GET /_search?q=user.id:elkbee&size=0&terminate_after=1
+--------------------------------------------------
+// TEST[setup:my_index]
+
+NOTE: `terminate_after` is always applied **after** the
+<<post-filter,`post_filter`>> and stops the query as well as the aggregation
+executions when enough hits have been collected on the shard. Though the doc
+count on aggregations may not reflect the `hits.total` in the response since
+aggregations are applied **before** the post filtering.
+
+The response will not contain any hits as the `size` was set to `0`. The
+`hits.total` will be either equal to `0`, indicating that there were no
+matching documents, or greater than `0` meaning that there were at least
+as many documents matching the query when it was early terminated.
+Also if the query was terminated early, the `terminated_early` flag will
+be set to `true` in the response.
+
+[source,console-result]
+--------------------------------------------------
+{
+  "took": 3,
+  "timed_out": false,
+  "terminated_early": true,
+  "_shards": {
+    "total": 1,
+    "successful": 1,
+    "skipped" : 0,
+    "failed": 0
+  },
+  "hits": {
+    "total" : {
+        "value": 1,
+        "relation": "eq"
+    },
+    "max_score": null,
+    "hits": []
+  }
+}
+--------------------------------------------------
+// TESTRESPONSE[s/"took": 3/"took": $body.took/]
+
+
+The `took` time in the response contains the milliseconds that this request
+took for processing, beginning quickly after the node received the query, up
+until all search related work is done and before the above JSON is returned
+to the client. This means it includes the time spent waiting in thread pools,
+executing a distributed search across the whole cluster and gathering all the
+results.

+ 0 - 197
docs/reference/search/request-body.asciidoc

@@ -1,197 +0,0 @@
-[[search-request-body]]
-=== Request Body Search
-
-Specifies search criteria as request body parameters.
-
-[source,console]
---------------------------------------------------
-GET /my-index-000001/_search
-{
-  "query" : {
-    "term" : { "user.id" : "kimchy" }
-  }
-}
---------------------------------------------------
-// TEST[setup:my_index]
-
-
-[[search-request-body-api-request]]
-==== {api-request-title}
-
-`GET /<target>/_search
-{
-  "query": {<parameters>}
-}`
-
-
-[[search-request-body-api-desc]]
-==== {api-description-title}
-
-The search request can be executed with a search DSL, which includes the
-<<query-dsl,Query DSL>>, within its body.
-
-
-[[search-request-body-api-path-params]]
-==== {api-path-parms-title}
-
-`<target>`::
-(Optional, string)
-Comma-separated list of data streams, indices, and index aliases to search.
-Wildcard (`*`) expressions are supported.
-+
-To search all data streams and indices in a cluster, omit this parameter or use
-`_all` or `*`.
-
-[[search-request-body-api-request-body]]
-==== {api-request-body-title}
-
-See the search API's <<search-search-api-request-body,request body parameters>>.
-
-==== Fast check for any matching docs
-
-NOTE: `terminate_after` is always applied **after** the `post_filter` and stops
-       the query as well as the aggregation executions when enough hits have been
-       collected on the shard. Though the doc count on aggregations may not reflect
-       the `hits.total` in the response since aggregations are applied **before** the
-       post filtering.
-
-In case we only want to know if there are any documents matching a
-specific query, we can set the `size` to `0` to indicate that we are not
-interested in the search results. Also we can set `terminate_after` to `1`
-to indicate that the query execution can be terminated whenever the first
-matching document was found (per shard).
-
-[source,console]
---------------------------------------------------
-GET /_search?q=user.id:elkbee&size=0&terminate_after=1
---------------------------------------------------
-// TEST[setup:my_index]
-
-
-The response will not contain any hits as the `size` was set to `0`. The
-`hits.total` will be either equal to `0`, indicating that there were no
-matching documents, or greater than `0` meaning that there were at least
-as many documents matching the query when it was early terminated.
-Also if the query was terminated early, the `terminated_early` flag will
-be set to `true` in the response.
-
-[source,console-result]
---------------------------------------------------
-{
-  "took": 3,
-  "timed_out": false,
-  "terminated_early": true,
-  "_shards": {
-    "total": 1,
-    "successful": 1,
-    "skipped" : 0,
-    "failed": 0
-  },
-  "hits": {
-    "total" : {
-        "value": 1,
-        "relation": "eq"
-    },
-    "max_score": null,
-    "hits": []
-  }
-}
---------------------------------------------------
-// TESTRESPONSE[s/"took": 3/"took": $body.took/]
-
-
-The `took` time in the response contains the milliseconds that this request
-took for processing, beginning quickly after the node received the query, up
-until all search related work is done and before the above JSON is returned
-to the client. This means it includes the time spent waiting in thread pools,
-executing a distributed search across the whole cluster and gathering all the
-results.
-
-
-[[request-body-search-docvalue-fields]]
-==== Doc value fields
-
-See <<docvalue-fields>>.
-
-[[request-body-search-collapse]]
-==== Field collapsing
-
-See <<collapse-search-results>>.
-
-[[request-body-search-highlighting]]
-==== Highlighting
-
-See <<highlighting>>.
-
-include::request/index-boost.asciidoc[]
-
-[[request-body-search-inner-hits]]
-==== Inner hits
-
-See <<inner-hits>>.
-
-[[request-body-search-min-score]]
-==== `min_score`
-
-See <<search-api-min-score>>.
-
-[[request-body-search-queries-and-filters]]
-==== Named queries
-
-See <<named-queries>>.
-
-[[request-body-search-post-filter]]
-==== Post filter
-
-See <<post-filter>>.
-
-include::request/preference.asciidoc[]
-
-[[request-body-search-rescore]]
-==== Rescoring
-
-See <<rescore>>.
-
-[[request-body-search-script-fields]]
-==== Script fields
-
-See <<script-fields>>.
-
-[[request-body-search-scroll]]
-==== Scroll
-
-See <<scroll-search-results>>.
-
-[[_clear_scroll_api]]
-===== Clear scroll API
-
-See <<clear-scroll-api>>.
-
-[[sliced-scroll]]
-===== Sliced scroll
-
-See <<slice-scroll>>.
-
-[[request-body-search-search-after]]
-==== Search After
-
-See <<search-after>>.
-
-include::request/search-type.asciidoc[]
-
-[[request-body-search-sort]]
-==== Sort
-
-See <<sort-search-results>>.
-
-[[request-body-search-source-filtering]]
-==== Source filtering
-
-See <<source-filtering>>.
-
-[[request-body-search-stored-fields]]
-==== Stored fields
-
-See <<stored-fields>>.
-
-include::request/track-total-hits.asciidoc[]

+ 1 - 1
docs/reference/search/request/collapse.asciidoc

@@ -119,7 +119,7 @@ the maximum number of concurrent searches allowed in this phase.
 The default is based on the number of data nodes and the default search thread pool size.
 
 WARNING: `collapse` cannot be used in conjunction with <<scroll-search-results, scroll>>,
-<<request-body-search-rescore, rescore>> or <<search-after, search after>>.
+<<rescore, rescore>> or <<search-after, search after>>.
 
 [discrete]
 [[second-level-of-collapsing]]

+ 6 - 7
docs/reference/search/request/index-boost.asciidoc

@@ -1,12 +1,11 @@
-[[request-body-search-index-boost]]
-==== Index Boost
+[discrete]
+[[index-boost]]
+=== Index boost
 
-Allows to configure different boost level per index when searching
-across more than one indices. This is very handy when hits coming from
-one index matter more than hits coming from another index (think social
-graph where each user has an index).
+When searching multiple indices, you can use the `indices_boost` parameter to
+boost results from one or more specified indices. This is useful when hits
+coming from one index matter more than hits coming from another index.
 
-deprecated[5.2.0, This format is deprecated. Please use array format instead.]
 [source,console]
 --------------------------------------------------
 GET /_search

+ 4 - 3
docs/reference/search/request/preference.asciidoc

@@ -1,7 +1,8 @@
-[[request-body-search-preference]]
-==== Preference
+[discrete]
+[[search-preference]]
+=== Preference
 
-Controls a `preference` of the shard copies on which to execute the search.  By
+You can use the `preference` parameter to control the shard copies on which a search runs. By
 default, Elasticsearch selects from the available shard copies in an
 unspecified order, taking the <<shard-allocation-awareness,allocation awareness>> and
 <<search-adaptive-replica,adaptive replica selection>> configuration into

+ 1 - 1
docs/reference/search/request/scroll.asciidoc

@@ -202,7 +202,7 @@ DELETE /_search/scroll/DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMN
 
 [discrete]
 [[slice-scroll]]
-==== Sliced Scroll
+==== Sliced scroll
 
 For scroll queries that return a lot of documents it is possible to split the scroll in multiple slices which
 can be consumed independently:

+ 7 - 4
docs/reference/search/request/search-type.asciidoc

@@ -1,5 +1,6 @@
-[[request-body-search-search-type]]
-==== Search Type
+[discrete]
+[[search-type]]
+=== Search type
 
 There are different execution paths that can be done when executing a
 distributed search. The distributed search operation needs to be
@@ -34,8 +35,9 @@ to execute on a *per search request* basis. The type can be configured
 by setting the *search_type* parameter in the query string. The types
 are:
 
+[discrete]
 [[query-then-fetch]]
-===== Query Then Fetch
+==== Query Then Fetch
 
 Parameter value: *query_then_fetch*.
 
@@ -59,8 +61,9 @@ GET my-index-000001/_search?search_type=query_then_fetch
 NOTE: This is the default setting, if you do not specify a `search_type`
       in your request.
 
+[discrete]
 [[dfs-query-then-fetch]]
-===== Dfs, Query Then Fetch
+==== Dfs, Query Then Fetch
 
 Parameter value: *dfs_query_then_fetch*.
 

+ 3 - 2
docs/reference/search/request/track-total-hits.asciidoc

@@ -1,5 +1,6 @@
-[[request-body-search-track-total-hits]]
-==== Track total hits
+[discrete]
+[[track-total-hits]]
+=== Track total hits
 
 Generally the total hit count can't be computed accurately without visiting all
 matches, which is costly for queries that match lots of documents. The

+ 6 - 0
docs/reference/search/search-your-data.asciidoc

@@ -227,6 +227,12 @@ GET /*/_search
 ----
 // TEST[setup:my_index]
 
+include::request/index-boost.asciidoc[]
+include::request/preference.asciidoc[]
+include::request/search-type.asciidoc[]
+include::request/track-total-hits.asciidoc[]
+include::quickly-check-for-matching-docs.asciidoc[]
+
 include::request/collapse.asciidoc[]
 include::filter-search-results.asciidoc[]
 include::request/highlighting.asciidoc[]

+ 1 - 1
x-pack/docs/en/watcher/customizing-watches.asciidoc

@@ -49,7 +49,7 @@ You can use the `search` input to load Elasticsearch search results as the watch
 initial payload.
 
 A <<input-search,search>> input contains a `request` object that specifies the
-indices you want to search, the <<request-body-search-search-type,search type>>,
+indices you want to search, the <<search-type,search type>>,
 and the search request body. The `body` field of a search input is the same as
 the body of an Elasticsearch `_search` request, making the full Elasticsearch
 Query DSL available for you to use.

+ 2 - 2
x-pack/docs/en/watcher/input/search.asciidoc

@@ -9,7 +9,7 @@ into the execution context when the watch is triggered. See
 In the search input's `request` object, you specify:
 
 * The indices you want to search
-* The <<request-body-search-search-type,search type>>
+* The <<search-type,search type>>
 * The search request body
 
 The search request body supports the full Elasticsearch Query DSL--it's the
@@ -163,7 +163,7 @@ accurately.
 |======
 | Name                                          |Required   | Default             | Description
 
-| `request.search_type`                         | no        | `query_then_fetch`  | The <<request-body-search-search-type,type>>
+| `request.search_type`                         | no        | `query_then_fetch`  | The <<search-type,type>>
                                                                                     of search request to perform. Valid values are: `dfs_query_and_fetch`,
                                                                                     `dfs_query_then_fetch`, `query_and_fetch`, and `query_then_fetch`. The
                                                                                     Elasticsearch default is `query_then_fetch`.

+ 1 - 1
x-pack/docs/en/watcher/transform/search.asciidoc

@@ -55,7 +55,7 @@ The following table lists all available settings for the search
 |======
 | Name                                          |Required   | Default           | Description
 
-| `request.search_type`                         | no        | query_then_fetch  | The search <<request-body-search-search-type,type>>.
+| `request.search_type`                         | no        | query_then_fetch  | The search <<search-type,type>>.
 
 | `request.indices`                             | no        | all indices       | One or more indices to search on.