@PublicEvolving public enum BatchShuffleMode extends Enum<BatchShuffleMode> implements DescribedEnum
ExecutionOptions.RUNTIME_MODE
if the
shuffling behavior has not been set explicitly for an individual exchange.
With pipelined exchanges, upstream and downstream tasks run simultaneously. In order to achieve lower latency, a result record is immediately sent to and processed by the downstream task. Thus, the receiver back-pressures the sender. The streaming mode always uses this exchange.
With blocking exchanges, upstream and downstream tasks run in stages. Records are persisted to some storage between stages. Downstream tasks then fetch these records after the upstream tasks finished. Such an exchange reduces the resources required to execute the job as it does not need to run upstream and downstream tasks simultaneously.
Enum Constant and Description |
---|
ALL_EXCHANGES_BLOCKING
Upstream and downstream tasks run subsequently.
|
ALL_EXCHANGES_HYBRID_FULL
Downstream can start running anytime, as long as the upstream has started.
|
ALL_EXCHANGES_HYBRID_SELECTIVE
Downstream can start running anytime, as long as the upstream has started.
|
ALL_EXCHANGES_PIPELINED
Upstream and downstream tasks run simultaneously.
|
Modifier and Type | Method and Description |
---|---|
InlineElement |
getDescription()
Returns the description for the enum constant.
|
static BatchShuffleMode |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static BatchShuffleMode[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final BatchShuffleMode ALL_EXCHANGES_PIPELINED
This leads to lower latency and more evenly distributed (but higher) resource usage across tasks.
public static final BatchShuffleMode ALL_EXCHANGES_BLOCKING
This reduces the resource usage as downstream tasks are started after upstream tasks finished.
public static final BatchShuffleMode ALL_EXCHANGES_HYBRID_FULL
This adapts the resource usage to whatever is available.
This type will spill all data to disk to support re-consume.
public static final BatchShuffleMode ALL_EXCHANGES_HYBRID_SELECTIVE
This adapts the resource usage to whatever is available.
This type will selective spilling data to reduce disk writes as much as possible.
public static BatchShuffleMode[] values()
for (BatchShuffleMode c : BatchShuffleMode.values()) System.out.println(c);
public static BatchShuffleMode valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic InlineElement getDescription()
DescribedEnum
If you want to include links or code blocks, use TextElement.wrap(InlineElement...)
to wrap multiple inline elements into a single one.
getDescription
in interface DescribedEnum
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.