Struct elasticsearch::BulkOperations
source · [−]pub struct BulkOperations { /* private fields */ }
Expand description
A collection of bulk operations.
A collection of bulk operations can perform operations against multiple different indices, specifying a different source document for each. When modelling source documents with different structs, it becomes difficult to construct a collection of bulk operations with such a setup. BulkOperations alleviates this difficulty by serializing bulk operations ahead of time of the bulk API call, into an internal byte buffer, using the buffered bytes as the body of the bulk API call.
Example
Using BulkOperations to construct a collection of bulk operations that use different structs to model source documents
#[derive(Serialize)]
struct IndexDoc<'a> {
foo: &'a str,
}
#[derive(Serialize)]
struct CreateDoc<'a> {
bar: &'a str,
}
#[derive(Serialize)]
struct UpdateDoc<'a> {
baz: &'a str,
}
let mut ops = BulkOperations::new();
ops.push(BulkOperation::index(IndexDoc { foo: "index" })
.id("1")
.pipeline("pipeline")
.index("index_doc")
.routing("routing")
)?;
ops.push(BulkOperation::create("2", CreateDoc { bar: "create" }))?;
ops.push(BulkOperation::update("3", UpdateDoc { baz: "update" }))?;
ops.push(BulkOperation::<()>::delete("4"))?;
let bulk_response = client.bulk(BulkParts::Index("tweets"))
.body(vec![ops])
.send()
.await?;
Implementations
sourceimpl BulkOperations
impl BulkOperations
sourcepub fn new() -> Self
pub fn new() -> Self
Initializes a new instance of BulkOperations
sourcepub fn with_bytes(buf: BytesMut) -> Self
pub fn with_bytes(buf: BytesMut) -> Self
Initializes a new instance of BulkOperations, using the passed bytes::BytesMut as the buffer to write operations to
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for BulkOperations
impl Send for BulkOperations
impl Sync for BulkOperations
impl Unpin for BulkOperations
impl UnwindSafe for BulkOperations
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