Struct elasticsearch::Elasticsearch
source · pub struct Elasticsearch { /* private fields */ }
Expand description
Root client for top level APIs
Implementations
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn async_search(&self) -> AsyncSearch<'_>
pub fn async_search(&self) -> AsyncSearch<'_>
Creates a namespace client for AsyncSearch APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn autoscaling(&self) -> Autoscaling<'_>
pub fn autoscaling(&self) -> Autoscaling<'_>
Creates a namespace client for Autoscaling APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn dangling_indices(&self) -> DanglingIndices<'_>
pub fn dangling_indices(&self) -> DanglingIndices<'_>
Creates a namespace client for DanglingIndices APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn monitoring(&self) -> Monitoring<'_>
pub fn monitoring(&self) -> Monitoring<'_>
Creates a namespace client for Monitoring APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn searchable_snapshots(&self) -> SearchableSnapshots<'_>
pub fn searchable_snapshots(&self) -> SearchableSnapshots<'_>
Creates a namespace client for SearchableSnapshots APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn text_structure(&self) -> TextStructure<'_>
pub fn text_structure(&self) -> TextStructure<'_>
Creates a namespace client for TextStructure APIs
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub async fn send<B, Q>(
&self,
method: Method,
path: &str,
headers: HeaderMap,
query_string: Option<&Q>,
body: Option<B>,
timeout: Option<Duration>
) -> Result<Response, Error>where
B: Body,
Q: Serialize + ?Sized,
pub async fn send<B, Q>(
&self,
method: Method,
path: &str,
headers: HeaderMap,
query_string: Option<&Q>,
body: Option<B>,
timeout: Option<Duration>
) -> Result<Response, Error>where
B: Body,
Q: Serialize + ?Sized,
Creates an asynchronous request that can be awaited
Accepts the HTTP method and relative path to an API, and optional query string and body.
sourceimpl Elasticsearch
impl Elasticsearch
sourcepub fn bulk<'a, 'b>(&'a self, parts: BulkParts<'b>) -> Bulk<'a, 'b, ()>
pub fn bulk<'a, 'b>(&'a self, parts: BulkParts<'b>) -> Bulk<'a, 'b, ()>
Allows to perform multiple index/update/delete operations in a single request.
sourcepub fn clear_scroll<'a, 'b>(
&'a self,
parts: ClearScrollParts<'b>
) -> ClearScroll<'a, 'b, ()>
pub fn clear_scroll<'a, 'b>(
&'a self,
parts: ClearScrollParts<'b>
) -> ClearScroll<'a, 'b, ()>
Explicitly clears the search context for a scroll.
sourcepub fn close_point_in_time<'a, 'b>(&'a self) -> ClosePointInTime<'a, 'b, ()>
pub fn close_point_in_time<'a, 'b>(&'a self) -> ClosePointInTime<'a, 'b, ()>
Close a point in time
sourcepub fn count<'a, 'b>(&'a self, parts: CountParts<'b>) -> Count<'a, 'b, ()>
pub fn count<'a, 'b>(&'a self, parts: CountParts<'b>) -> Count<'a, 'b, ()>
Returns number of documents matching a query.
sourcepub fn create<'a, 'b>(&'a self, parts: CreateParts<'b>) -> Create<'a, 'b, ()>
pub fn create<'a, 'b>(&'a self, parts: CreateParts<'b>) -> Create<'a, 'b, ()>
Creates a new document in the index.
Returns a 409 response when a document with a same ID already exists in the index.
sourcepub fn delete<'a, 'b>(&'a self, parts: DeleteParts<'b>) -> Delete<'a, 'b>
pub fn delete<'a, 'b>(&'a self, parts: DeleteParts<'b>) -> Delete<'a, 'b>
Removes a document from the index.
sourcepub fn delete_by_query<'a, 'b>(
&'a self,
parts: DeleteByQueryParts<'b>
) -> DeleteByQuery<'a, 'b, ()>
pub fn delete_by_query<'a, 'b>(
&'a self,
parts: DeleteByQueryParts<'b>
) -> DeleteByQuery<'a, 'b, ()>
Deletes documents matching the provided query.
sourcepub fn delete_by_query_rethrottle<'a, 'b>(
&'a self,
parts: DeleteByQueryRethrottleParts<'b>
) -> DeleteByQueryRethrottle<'a, 'b, ()>
pub fn delete_by_query_rethrottle<'a, 'b>(
&'a self,
parts: DeleteByQueryRethrottleParts<'b>
) -> DeleteByQueryRethrottle<'a, 'b, ()>
Delete By Query Rethrottle API
Changes the number of requests per second for a particular Delete By Query operation.
sourcepub fn delete_script<'a, 'b>(
&'a self,
parts: DeleteScriptParts<'b>
) -> DeleteScript<'a, 'b>
pub fn delete_script<'a, 'b>(
&'a self,
parts: DeleteScriptParts<'b>
) -> DeleteScript<'a, 'b>
Deletes a script.
sourcepub fn exists<'a, 'b>(&'a self, parts: ExistsParts<'b>) -> Exists<'a, 'b>
pub fn exists<'a, 'b>(&'a self, parts: ExistsParts<'b>) -> Exists<'a, 'b>
Returns information about whether a document exists in an index.
sourcepub fn exists_source<'a, 'b>(
&'a self,
parts: ExistsSourceParts<'b>
) -> ExistsSource<'a, 'b>
pub fn exists_source<'a, 'b>(
&'a self,
parts: ExistsSourceParts<'b>
) -> ExistsSource<'a, 'b>
Returns information about whether a document source exists in an index.
sourcepub fn explain<'a, 'b>(&'a self, parts: ExplainParts<'b>) -> Explain<'a, 'b, ()>
pub fn explain<'a, 'b>(&'a self, parts: ExplainParts<'b>) -> Explain<'a, 'b, ()>
Returns information about why a specific matches (or doesn’t match) a query.
sourcepub fn field_caps<'a, 'b>(
&'a self,
parts: FieldCapsParts<'b>
) -> FieldCaps<'a, 'b, ()>
pub fn field_caps<'a, 'b>(
&'a self,
parts: FieldCapsParts<'b>
) -> FieldCaps<'a, 'b, ()>
Returns the information about the capabilities of fields among multiple indices.
sourcepub fn get_script<'a, 'b>(
&'a self,
parts: GetScriptParts<'b>
) -> GetScript<'a, 'b>
pub fn get_script<'a, 'b>(
&'a self,
parts: GetScriptParts<'b>
) -> GetScript<'a, 'b>
Returns a script.
sourcepub fn get_script_context<'a, 'b>(&'a self) -> GetScriptContext<'a, 'b>
pub fn get_script_context<'a, 'b>(&'a self) -> GetScriptContext<'a, 'b>
Returns all script contexts.
sourcepub fn get_script_languages<'a, 'b>(&'a self) -> GetScriptLanguages<'a, 'b>
pub fn get_script_languages<'a, 'b>(&'a self) -> GetScriptLanguages<'a, 'b>
Returns available script types, languages and contexts
sourcepub fn get_source<'a, 'b>(
&'a self,
parts: GetSourceParts<'b>
) -> GetSource<'a, 'b>
pub fn get_source<'a, 'b>(
&'a self,
parts: GetSourceParts<'b>
) -> GetSource<'a, 'b>
Returns the source of a document.
sourcepub fn index<'a, 'b>(&'a self, parts: IndexParts<'b>) -> Index<'a, 'b, ()>
pub fn index<'a, 'b>(&'a self, parts: IndexParts<'b>) -> Index<'a, 'b, ()>
Creates or updates a document in an index.
sourcepub fn knn_search<'a, 'b>(
&'a self,
parts: KnnSearchParts<'b>
) -> KnnSearch<'a, 'b, ()>
pub fn knn_search<'a, 'b>(
&'a self,
parts: KnnSearchParts<'b>
) -> KnnSearch<'a, 'b, ()>
Performs a kNN search.
Optional, experimental
This requires the experimental-apis
feature. Can have breaking changes in future
versions or might even be removed entirely.
sourcepub fn mget<'a, 'b>(&'a self, parts: MgetParts<'b>) -> Mget<'a, 'b, ()>
pub fn mget<'a, 'b>(&'a self, parts: MgetParts<'b>) -> Mget<'a, 'b, ()>
Allows to get multiple documents in one request.
sourcepub fn msearch<'a, 'b>(&'a self, parts: MsearchParts<'b>) -> Msearch<'a, 'b, ()>
pub fn msearch<'a, 'b>(&'a self, parts: MsearchParts<'b>) -> Msearch<'a, 'b, ()>
Allows to execute several search operations in one request.
sourcepub fn msearch_template<'a, 'b>(
&'a self,
parts: MsearchTemplateParts<'b>
) -> MsearchTemplate<'a, 'b, ()>
pub fn msearch_template<'a, 'b>(
&'a self,
parts: MsearchTemplateParts<'b>
) -> MsearchTemplate<'a, 'b, ()>
Allows to execute several search template operations in one request.
sourcepub fn mtermvectors<'a, 'b>(
&'a self,
parts: MtermvectorsParts<'b>
) -> Mtermvectors<'a, 'b, ()>
pub fn mtermvectors<'a, 'b>(
&'a self,
parts: MtermvectorsParts<'b>
) -> Mtermvectors<'a, 'b, ()>
Returns multiple termvectors in one request.
sourcepub fn open_point_in_time<'a, 'b>(
&'a self,
parts: OpenPointInTimeParts<'b>
) -> OpenPointInTime<'a, 'b, ()>
pub fn open_point_in_time<'a, 'b>(
&'a self,
parts: OpenPointInTimeParts<'b>
) -> OpenPointInTime<'a, 'b, ()>
Open a point in time that can be used in subsequent searches
sourcepub fn put_script<'a, 'b>(
&'a self,
parts: PutScriptParts<'b>
) -> PutScript<'a, 'b, ()>
pub fn put_script<'a, 'b>(
&'a self,
parts: PutScriptParts<'b>
) -> PutScript<'a, 'b, ()>
Creates or updates a script.
sourcepub fn rank_eval<'a, 'b>(
&'a self,
parts: RankEvalParts<'b>
) -> RankEval<'a, 'b, ()>
pub fn rank_eval<'a, 'b>(
&'a self,
parts: RankEvalParts<'b>
) -> RankEval<'a, 'b, ()>
Allows to evaluate the quality of ranked search results over a set of typical search queries
sourcepub fn reindex<'a, 'b>(&'a self) -> Reindex<'a, 'b, ()>
pub fn reindex<'a, 'b>(&'a self) -> Reindex<'a, 'b, ()>
Allows to copy documents from one index to another, optionally filtering the source documents by a query, changing the destination index settings, or fetching the documents from a remote cluster.
sourcepub fn reindex_rethrottle<'a, 'b>(
&'a self,
parts: ReindexRethrottleParts<'b>
) -> ReindexRethrottle<'a, 'b, ()>
pub fn reindex_rethrottle<'a, 'b>(
&'a self,
parts: ReindexRethrottleParts<'b>
) -> ReindexRethrottle<'a, 'b, ()>
Changes the number of requests per second for a particular Reindex operation.
sourcepub fn render_search_template<'a, 'b>(
&'a self,
parts: RenderSearchTemplateParts<'b>
) -> RenderSearchTemplate<'a, 'b, ()>
pub fn render_search_template<'a, 'b>(
&'a self,
parts: RenderSearchTemplateParts<'b>
) -> RenderSearchTemplate<'a, 'b, ()>
Allows to use the Mustache language to pre-render a search definition.
sourcepub fn scripts_painless_execute<'a, 'b>(
&'a self
) -> ScriptsPainlessExecute<'a, 'b, ()>
pub fn scripts_painless_execute<'a, 'b>(
&'a self
) -> ScriptsPainlessExecute<'a, 'b, ()>
Allows an arbitrary script to be executed and a result to be returned
Optional, experimental
This requires the experimental-apis
feature. Can have breaking changes in future
versions or might even be removed entirely.
sourcepub fn scroll<'a, 'b>(&'a self, parts: ScrollParts<'b>) -> Scroll<'a, 'b, ()>
pub fn scroll<'a, 'b>(&'a self, parts: ScrollParts<'b>) -> Scroll<'a, 'b, ()>
Allows to retrieve a large numbers of results from a single search request.
Examples
To initiate a scroll, make search API call with a specified scroll
timeout,
then fetch the next set of hits using the _scroll_id
returned in
the response. Once no more hits are returned, clear the scroll.
let client = Elasticsearch::default();
fn print_hits(hits: &[Value]) {
for hit in hits {
println!(
"id: '{}', source: '{}', score: '{}'",
hit["_id"].as_str().unwrap(),
hit["_source"],
hit["_score"].as_f64().unwrap()
);
}
}
let scroll = "1m";
let mut response = client
.search(SearchParts::Index(&["tweets"]))
.scroll(scroll)
.body(json!({
"query": {
"match": {
"body": {
"query": "Elasticsearch rust",
"operator": "AND"
}
}
}
}))
.send()
.await?;
let mut response_body = response.json::<Value>().await?;
let mut scroll_id = response_body["_scroll_id"].as_str().unwrap();
let mut hits = response_body["hits"]["hits"].as_array().unwrap();
print_hits(hits);
while hits.len() > 0 {
response = client
.scroll(ScrollParts::None)
.body(json!({
"scroll": scroll,
"scroll_id": scroll_id
}))
.send()
.await?;
response_body = response.json::<Value>().await?;
scroll_id = response_body["_scroll_id"].as_str().unwrap();
hits = response_body["hits"]["hits"].as_array().unwrap();
print_hits(hits);
}
response = client
.clear_scroll(ClearScrollParts::None)
.body(json!({
"scroll_id": scroll_id
}))
.send()
.await?;
sourcepub fn search<'a, 'b>(&'a self, parts: SearchParts<'b>) -> Search<'a, 'b, ()>
pub fn search<'a, 'b>(&'a self, parts: SearchParts<'b>) -> Search<'a, 'b, ()>
Returns results matching a query.
sourcepub fn search_mvt<'a, 'b>(
&'a self,
parts: SearchMvtParts<'b>
) -> SearchMvt<'a, 'b, ()>
pub fn search_mvt<'a, 'b>(
&'a self,
parts: SearchMvtParts<'b>
) -> SearchMvt<'a, 'b, ()>
Searches a vector tile for geospatial values. Returns results as a binary Mapbox vector tile.
Optional, experimental
This requires the experimental-apis
feature. Can have breaking changes in future
versions or might even be removed entirely.
sourcepub fn search_shards<'a, 'b>(
&'a self,
parts: SearchShardsParts<'b>
) -> SearchShards<'a, 'b, ()>
pub fn search_shards<'a, 'b>(
&'a self,
parts: SearchShardsParts<'b>
) -> SearchShards<'a, 'b, ()>
Returns information about the indices and shards that a search request would be executed against.
sourcepub fn search_template<'a, 'b>(
&'a self,
parts: SearchTemplateParts<'b>
) -> SearchTemplate<'a, 'b, ()>
pub fn search_template<'a, 'b>(
&'a self,
parts: SearchTemplateParts<'b>
) -> SearchTemplate<'a, 'b, ()>
Allows to use the Mustache language to pre-render a search definition.
sourcepub fn terms_enum<'a, 'b>(
&'a self,
parts: TermsEnumParts<'b>
) -> TermsEnum<'a, 'b, ()>
pub fn terms_enum<'a, 'b>(
&'a self,
parts: TermsEnumParts<'b>
) -> TermsEnum<'a, 'b, ()>
The terms enum API can be used to discover terms in the index that begin with the provided string. It is designed for low-latency look-ups used in auto-complete scenarios.
sourcepub fn termvectors<'a, 'b>(
&'a self,
parts: TermvectorsParts<'b>
) -> Termvectors<'a, 'b, ()>
pub fn termvectors<'a, 'b>(
&'a self,
parts: TermvectorsParts<'b>
) -> Termvectors<'a, 'b, ()>
Returns information and statistics about terms in the fields of a particular document.
sourcepub fn update<'a, 'b>(&'a self, parts: UpdateParts<'b>) -> Update<'a, 'b, ()>
pub fn update<'a, 'b>(&'a self, parts: UpdateParts<'b>) -> Update<'a, 'b, ()>
Updates a document with a script or partial document.
sourcepub fn update_by_query<'a, 'b>(
&'a self,
parts: UpdateByQueryParts<'b>
) -> UpdateByQuery<'a, 'b, ()>
pub fn update_by_query<'a, 'b>(
&'a self,
parts: UpdateByQueryParts<'b>
) -> UpdateByQuery<'a, 'b, ()>
Performs an update on every document in the index without changing the source, for example to pick up a mapping change.
sourcepub fn update_by_query_rethrottle<'a, 'b>(
&'a self,
parts: UpdateByQueryRethrottleParts<'b>
) -> UpdateByQueryRethrottle<'a, 'b, ()>
pub fn update_by_query_rethrottle<'a, 'b>(
&'a self,
parts: UpdateByQueryRethrottleParts<'b>
) -> UpdateByQueryRethrottle<'a, 'b, ()>
Update By Query Rethrottle API
Changes the number of requests per second for a particular Update By Query operation.
Trait Implementations
sourceimpl Clone for Elasticsearch
impl Clone for Elasticsearch
sourcefn clone(&self) -> Elasticsearch
fn clone(&self) -> Elasticsearch
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more