public final class RequestedGlobalProperties extends Object implements Cloneable
| Constructor and Description |
|---|
RequestedGlobalProperties()
Initializes the global properties with no partitioning.
|
| Modifier and Type | Method and Description |
|---|---|
RequestedGlobalProperties |
clone() |
boolean |
equals(Object obj) |
RequestedGlobalProperties |
filterBySemanticProperties(org.apache.flink.api.common.operators.SemanticProperties props,
int input)
Filters these properties by what can be preserved by the given SemanticProperties when propagated down
to the given input.
|
org.apache.flink.api.common.functions.Partitioner<?> |
getCustomPartitioner()
Gets the custom partitioner associated with these properties.
|
org.apache.flink.api.common.distributions.DataDistribution |
getDataDistribution()
Gets the data distribution.
|
org.apache.flink.api.common.operators.Ordering |
getOrdering()
Gets the key order.
|
org.apache.flink.api.common.operators.util.FieldSet |
getPartitionedFields()
Gets the fields on which the data is partitioned.
|
PartitioningProperty |
getPartitioning()
Gets the partitioning property.
|
int |
hashCode() |
boolean |
isMetBy(GlobalProperties props)
Checks, if this set of interesting properties, is met by the given
produced properties.
|
boolean |
isTrivial()
Checks, if the properties in this object are trivial, i.e.
|
void |
parameterizeChannel(Channel channel,
boolean globalDopChange,
org.apache.flink.api.common.ExecutionMode exchangeMode,
boolean breakPipeline)
Parametrizes the ship strategy fields of a channel such that the channel produces
the desired global properties.
|
void |
reset()
This method resets the properties to a state where no properties are given.
|
void |
setAnyDistribution() |
void |
setAnyPartitioning(org.apache.flink.api.common.operators.util.FieldSet partitionedFields)
Sets these properties to request some partitioning on the given fields.
|
void |
setCustomPartitioned(org.apache.flink.api.common.operators.util.FieldSet partitionedFields,
org.apache.flink.api.common.functions.Partitioner<?> partitioner)
Sets these properties to request a custom partitioning with the given
Partitioner instance. |
void |
setForceRebalancing() |
void |
setFullyReplicated() |
void |
setHashPartitioned(org.apache.flink.api.common.operators.util.FieldSet partitionedFields)
Sets these properties to request a hash partitioning on the given fields.
|
void |
setRandomPartitioning() |
void |
setRangePartitioned(org.apache.flink.api.common.operators.Ordering ordering) |
void |
setRangePartitioned(org.apache.flink.api.common.operators.Ordering ordering,
org.apache.flink.api.common.distributions.DataDistribution dataDistribution) |
String |
toString() |
public RequestedGlobalProperties()
public void setHashPartitioned(org.apache.flink.api.common.operators.util.FieldSet partitionedFields)
FieldSet, then any permutation of the fields is a
valid partitioning, including subsets. If the fields are given as a FieldList,
then only an exact partitioning on the fields matches this requested partitioning.partitionedFields - The key fields for the partitioning.public void setRangePartitioned(org.apache.flink.api.common.operators.Ordering ordering)
public void setRangePartitioned(org.apache.flink.api.common.operators.Ordering ordering,
org.apache.flink.api.common.distributions.DataDistribution dataDistribution)
public void setAnyPartitioning(org.apache.flink.api.common.operators.util.FieldSet partitionedFields)
FieldSet, then any permutation of the fields is a
valid partitioning, including subsets. If the fields are given as a FieldList,
then only an exact partitioning on the fields matches this requested partitioning.partitionedFields - The key fields for the partitioning.public void setRandomPartitioning()
public void setAnyDistribution()
public void setFullyReplicated()
public void setForceRebalancing()
public void setCustomPartitioned(org.apache.flink.api.common.operators.util.FieldSet partitionedFields,
org.apache.flink.api.common.functions.Partitioner<?> partitioner)
Partitioner instance.
If the fields are provided as FieldSet, then any permutation of the fields is a
valid partitioning, including subsets. If the fields are given as a FieldList,
then only an exact partitioning on the fields matches this requested partitioning.partitionedFields - The key fields for the partitioning.public PartitioningProperty getPartitioning()
public org.apache.flink.api.common.operators.util.FieldSet getPartitionedFields()
public org.apache.flink.api.common.operators.Ordering getOrdering()
public org.apache.flink.api.common.distributions.DataDistribution getDataDistribution()
public org.apache.flink.api.common.functions.Partitioner<?> getCustomPartitioner()
public boolean isTrivial()
public void reset()
public RequestedGlobalProperties filterBySemanticProperties(org.apache.flink.api.common.operators.SemanticProperties props, int input)
props - The SemanticProperties which define which fields are preserved.input - The index of the operator's input.public boolean isMetBy(GlobalProperties props)
props - The properties for which to check whether they meet these properties.public void parameterizeChannel(Channel channel, boolean globalDopChange, org.apache.flink.api.common.ExecutionMode exchangeMode, boolean breakPipeline)
channel - The channel to parametrize.globalDopChange - Flag indicating whether the parallelism changes
between sender and receiver.exchangeMode - The mode of data exchange (pipelined, always batch,
batch only on shuffle, ...)breakPipeline - Indicates whether this data exchange should break
pipelines (unless pipelines are forced).public RequestedGlobalProperties clone()
Copyright © 2014–2017 The Apache Software Foundation. All rights reserved.