Struct elasticsearch::BulkOperation
source · [−]pub struct BulkOperation<B> { /* private fields */ }
Expand description
A bulk operation consists of a header that indicates the bulk action and the related metadata for the action, and an optional source document.
A collection of bulk operations can be sent to the Bulk API in the body of the API call.
For serializing a collection of bulk operations that model the source document of each bulk operation using different structs, take a look at BulkOperations.
Example
Using serde_json’s json!
macro to constuct serde_json::Value from JSON literals, for
the source document of each bulk operation
let mut ops: Vec<BulkOperation<Value>> = Vec::with_capacity(4);
ops.push(BulkOperation::index(json!({
"user": "kimchy",
"post_date": "2009-11-15T00:00:00Z",
"message": "Trying out Elasticsearch, so far so good?"
}))
.id("1")
.pipeline("process_tweet")
.into()
);
ops.push(BulkOperation::create("2", json!({
"user": "forloop",
"post_date": "2020-01-08T00:00:00Z",
"message": "Indexing with the rust client, yeah!"
}))
.pipeline("process_tweet")
.into()
);
ops.push(BulkOperation::update("3", json!({
"doc": {
"message": "Tweets are _meant_ to be immutable!"
},
"doc_as_upsert": true
}))
.into()
);
ops.push(BulkOperation::delete("4")
.index("old_tweets")
.into()
);
let bulk_response = client.bulk(BulkParts::Index("tweets"))
.body(ops)
.send()
.await?;
Implementations
sourceimpl<B> BulkOperation<B> where
B: Serialize,
impl<B> BulkOperation<B> where
B: Serialize,
sourcepub fn create<S>(id: S, source: B) -> BulkCreateOperation<B> where
S: Into<String>,
pub fn create<S>(id: S, source: B) -> BulkCreateOperation<B> where
S: Into<String>,
Creates a new instance of a bulk create operation
sourcepub fn index(source: B) -> BulkIndexOperation<B>
pub fn index(source: B) -> BulkIndexOperation<B>
Creates a new instance of a bulk index operation
sourcepub fn delete<S>(id: S) -> BulkDeleteOperation<B> where
S: Into<String>,
pub fn delete<S>(id: S) -> BulkDeleteOperation<B> where
S: Into<String>,
Creates a new instance of a bulk delete operation
sourcepub fn update<S>(id: S, source: B) -> BulkUpdateOperation<B> where
S: Into<String>,
pub fn update<S>(id: S, source: B) -> BulkUpdateOperation<B> where
S: Into<String>,
Creates a new instance of a bulk update operation
Trait Implementations
sourceimpl<B> Body for BulkOperation<B> where
B: Serialize,
impl<B> Body for BulkOperation<B> where
B: Serialize,
sourceimpl<B> From<BulkCreateOperation<B>> for BulkOperation<B>
impl<B> From<BulkCreateOperation<B>> for BulkOperation<B>
sourcefn from(b: BulkCreateOperation<B>) -> Self
fn from(b: BulkCreateOperation<B>) -> Self
Converts to this type from the input type.
sourceimpl<B> From<BulkDeleteOperation<B>> for BulkOperation<B>
impl<B> From<BulkDeleteOperation<B>> for BulkOperation<B>
sourcefn from(b: BulkDeleteOperation<B>) -> Self
fn from(b: BulkDeleteOperation<B>) -> Self
Converts to this type from the input type.
sourceimpl<B> From<BulkIndexOperation<B>> for BulkOperation<B>
impl<B> From<BulkIndexOperation<B>> for BulkOperation<B>
sourcefn from(b: BulkIndexOperation<B>) -> Self
fn from(b: BulkIndexOperation<B>) -> Self
Converts to this type from the input type.
sourceimpl<B> From<BulkUpdateOperation<B>> for BulkOperation<B>
impl<B> From<BulkUpdateOperation<B>> for BulkOperation<B>
sourcefn from(b: BulkUpdateOperation<B>) -> Self
fn from(b: BulkUpdateOperation<B>) -> Self
Converts to this type from the input type.
Auto Trait Implementations
impl<B> RefUnwindSafe for BulkOperation<B> where
B: RefUnwindSafe,
impl<B> Send for BulkOperation<B> where
B: Send,
impl<B> Sync for BulkOperation<B> where
B: Sync,
impl<B> Unpin for BulkOperation<B> where
B: Unpin,
impl<B> UnwindSafe for BulkOperation<B> where
B: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more