Class MsearchRequest
- All Implemented Interfaces:
JsonpSerializable,NdJsonpSerializable
The format of the request is similar to the bulk API format and makes use of the newline delimited JSON (NDJSON) format. The structure is as follows:
header\n
body\n
header\n
body\n
This structure is specifically optimized to reduce parsing if a specific search ends up redirected to another node.
IMPORTANT: The final line of data must end with a newline character
\n. Each newline character may be preceded by a carriage return
\r. When sending requests to this endpoint the
Content-Type header should be set to
application/x-ndjson.
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class co.elastic.clients.elasticsearch._types.RequestBase
RequestBase.AbstractBuilder<BuilderT extends RequestBase.AbstractBuilder<BuilderT>> -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SimpleEndpoint<MsearchRequest,?> Endpoint "msearch". -
Method Summary
Modifier and TypeMethodDescriptionIterator<?>final BooleanA setting that does two separate checks on the index expression.final BooleanIf true, network roundtrips between the coordinating node and remote clusters are minimized for cross-cluster search requests.static <TDocument>
Endpoint<MsearchRequest,MsearchResponse<TDocument>, ErrorResponse> createMsearchEndpoint(JsonpDeserializer<TDocument> tDocumentDeserializer) Create an "msearch" endpoint.final List<ExpandWildcard>Type of index that wildcard expressions can match.final BooleanDeprecated.7.16.0 This parameter is deprecated because frozen indices have been deprecated.final BooleanIffalse, the request returns an error if it targets a concrete (non-wildcarded) index, alias, or data stream that is missing, closed, or otherwise unavailable.final BooleanIndicates whether hit.matched_queries should be rendered as a map that includes the name of the matched query associated with its score (true) or as an array containing the name of the matched queries (false) This functionality reruns each named query on every hit in a search response.index()Comma-separated list of data streams, indices, and index aliases to search.final IntegerMaximum number of concurrent searches the multi search API can execute.final IntegerMaximum number of concurrent shard requests that each sub-search request executes per node.static MsearchRequestfinal LongDefines a threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold.final StringSpecifies a subset of projects to target for a search using project metadata tags in a subset Lucene syntax.rebuild()final StringThe slice identifier for routing the search to a specific slice.routing()Custom routing value used to route search operations to a specific shard.final List<RequestItem>searches()Required - Request body.final SearchTypeIndicates whether global term and document frequencies should be used when scoring returned documents.voidserialize(jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper) Serialize this value to JSON.Methods inherited from class co.elastic.clients.elasticsearch._types.RequestBase
toString
-
Field Details
-
_ENDPOINT
Endpoint "msearch".
-
-
Method Details
-
of
-
_serializables
- Specified by:
_serializablesin interfaceNdJsonpSerializable
-
allowNoIndices
A setting that does two separate checks on the index expression. Iffalse, the request returns an error (1) if any wildcard expression (including_alland*) resolves to zero matching indices or (2) if the complete set of resolved indices, aliases or data streams is empty after all expressions are evaluated. Iftrue, index expressions that resolve to no indices are allowed and the request returns an empty result.API name:
allow_no_indices -
ccsMinimizeRoundtrips
If true, network roundtrips between the coordinating node and remote clusters are minimized for cross-cluster search requests.API name:
ccs_minimize_roundtrips -
expandWildcards
Type of index that wildcard expressions can match. If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.API name:
expand_wildcards -
ignoreThrottled
Deprecated.7.16.0 This parameter is deprecated because frozen indices have been deprecated.If true, concrete, expanded or aliased indices are ignored when frozen.API name:
ignore_throttled -
includeNamedQueriesScore
Indicates whether hit.matched_queries should be rendered as a map that includes the name of the matched query associated with its score (true) or as an array containing the name of the matched queries (false) This functionality reruns each named query on every hit in a search response. Typically, this adds a small overhead to a request. However, using computationally expensive named queries on a large number of hits may add significant overhead.API name:
include_named_queries_score -
index
Comma-separated list of data streams, indices, and index aliases to search.API name:
index -
maxConcurrentSearches
Maximum number of concurrent searches the multi search API can execute. Defaults tomax(1, (# of data nodes * min(search thread pool size, 10))).API name:
max_concurrent_searches -
maxConcurrentShardRequests
Maximum number of concurrent shard requests that each sub-search request executes per node.API name:
max_concurrent_shard_requests -
preFilterShardSize
Defines a threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold. This filter roundtrip can limit the number of shards significantly if for instance a shard can not match any documents based on its rewrite method i.e., if date filters are mandatory to match but the shard bounds and the query are disjoint.API name:
pre_filter_shard_size -
projectRouting
Specifies a subset of projects to target for a search using project metadata tags in a subset Lucene syntax. Allowed Lucene queries: the _alias tag and a single value (possible wildcarded). Examples: _alias:my-project _alias:_origin _alias:pr Supported in serverless only.API name:
project_routing -
routeSlice
The slice identifier for routing the search to a specific slice. When provided at the top level, all sub-searches are routed to shards matching the given slice value. Use the special value_allto query all slices without restricting to a routing value. Required whenindex.slice.enabledistruefor the target index; not allowed whenindex.slice.enabledisfalse. Individual sub-search headers can also specify_sliceto override the top-level setting.API name:
_slice -
routing
Custom routing value used to route search operations to a specific shard. Not allowed whenindex.slice.enabledistruefor the target index; use_sliceinstead.API name:
routing -
searchType
Indicates whether global term and document frequencies should be used when scoring returned documents.API name:
search_type -
searches
Required - Request body. -
serialize
Serialize this value to JSON.- Specified by:
serializein interfaceJsonpSerializable
-
rebuild
- Returns:
- New
MsearchRequest.Builderinitialized with field values of this instance
-
createMsearchEndpoint
public static <TDocument> Endpoint<MsearchRequest,MsearchResponse<TDocument>, createMsearchEndpointErrorResponse> (JsonpDeserializer<TDocument> tDocumentDeserializer) Create an "msearch" endpoint.
-