pub enum OperationType {
Map,
MapReduce,
Reduce,
Sort,
Vanilla,
Merge,
Erase,
RemoteCopy,
JoinReduce,
}Expand description
The kind of operation to start.
All nine the cluster registers. Five have a spec builder here; merge,
erase and remote_copy gained one with this enum, and join_reduce did
not — see its variant.
Variants§
Map
A map operation.
MapReduce
A map-reduce operation.
Reduce
A reduce operation over sorted input.
Sort
A sort operation.
Vanilla
An operation with no input tables.
Merge
A merge of several tables into one. See MergeSpec.
Erase
Deletion of rows from one table. See EraseSpec.
RemoteCopy
A copy of a table from another cluster. See RemoteCopySpec.
JoinReduce
A reduce that joins foreign tables — the older spelling.
There is no JoinReduceSpec, and that is deliberate. The cluster still
registers the type, but the current documentation no longer lists it
among start_operation’s operation_type values, and describes the same
work as a reduce with foreign
tables:
a reduce whose spec carries join_by and enable_key_guarantee=%false.
Build that with ReduceSpec::with_raw:
use ytsaurus_client::{ReduceSpec, yson_build};
let spec = ReduceSpec::new("./j", ["//tmp/primary"], ["//tmp/out"], ["host"])
.with_raw("join_by", yson_build::list([yson_build::string("host")]))
.with_raw("enable_key_guarantee", yson_build::boolean(false));The variant exists so a caller who does want the older type can name it
through Client::start_operation,
which is what the enum is for.
Implementations§
Trait Implementations§
Source§impl Clone for OperationType
impl Clone for OperationType
Source§fn clone(&self) -> OperationType
fn clone(&self) -> OperationType
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more