@InterfaceAudience.Public
@InterfaceStability.Evolving
public class FairShuffleVertexManager
extends org.apache.tez.dag.api.VertexManagerPlugin
FairShuffleVertexManager.FairRoutingType
. One is FairShuffleVertexManager.FairRoutingType.REDUCE_PARALLELISM
which is similar to ShuffleVertexManager's auto reduce functionality.
Another one is FairShuffleVertexManager.FairRoutingType.FAIR_PARALLELISM
where each
destination task can process a range of consecutive partitions from a range
of consecutive source tasks.Modifier and Type | Field and Description |
---|---|
static String |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_DESIRED_TASK_INPUT_SIZE
The desired size of input per task.
|
static long |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_DESIRED_TASK_INPUT_SIZE_DEFAULT |
static String |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_ENABLE_AUTO_PARALLEL
Enables automatic parallelism determination for the vertex.
|
static String |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_ENABLE_AUTO_PARALLEL_DEFAULT |
static String |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MAX_SRC_FRACTION
In case of a ScatterGather connection, once this fraction of source tasks
have completed, all tasks on the current vertex can be scheduled.
|
static float |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MAX_SRC_FRACTION_DEFAULT |
static String |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MIN_SRC_FRACTION
In case of a ScatterGather connection, the fraction of source tasks which
should complete before tasks for the current vertex are scheduled
|
static float |
TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MIN_SRC_FRACTION_DEFAULT |
Constructor and Description |
---|
FairShuffleVertexManager(org.apache.tez.dag.api.VertexManagerPluginContext context) |
Modifier and Type | Method and Description |
---|---|
org.apache.tez.dag.library.vertexmanager.ShuffleVertexManagerBase.ReconfigVertexParams |
computeRouting()
Subclass might return null to indicate there is no new routing.
|
static org.apache.tez.dag.library.vertexmanager.FairShuffleVertexManager.FairShuffleVertexManagerConfigBuilder |
createConfigBuilder(org.apache.hadoop.conf.Configuration conf)
Create a
VertexManagerPluginDescriptor builder that can be used to
configure the plugin. |
long[] |
estimatePartitionSize() |
void |
initialize() |
void |
onRootVertexInitialized(String inputName,
org.apache.tez.dag.api.InputDescriptor inputDescriptor,
List<org.apache.tez.runtime.api.Event> events) |
void |
onSourceTaskCompleted(org.apache.tez.runtime.api.TaskAttemptIdentifier attempt) |
void |
onVertexManagerEventReceived(org.apache.tez.runtime.api.events.VertexManagerEvent vmEvent) |
void |
onVertexStarted(List<org.apache.tez.runtime.api.TaskAttemptIdentifier> completions) |
protected void |
onVertexStartedCheck() |
void |
onVertexStateUpdated(org.apache.tez.dag.api.event.VertexStateUpdate stateUpdate) |
public static final String TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_DESIRED_TASK_INPUT_SIZE
public static final long TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_DESIRED_TASK_INPUT_SIZE_DEFAULT
public static final String TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_ENABLE_AUTO_PARALLEL
public static final String TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_ENABLE_AUTO_PARALLEL_DEFAULT
public static final String TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MIN_SRC_FRACTION
public static final float TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MIN_SRC_FRACTION_DEFAULT
public static final String TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MAX_SRC_FRACTION
public static final float TEZ_FAIR_SHUFFLE_VERTEX_MANAGER_MAX_SRC_FRACTION_DEFAULT
public FairShuffleVertexManager(org.apache.tez.dag.api.VertexManagerPluginContext context)
protected void onVertexStartedCheck()
public long[] estimatePartitionSize()
public org.apache.tez.dag.library.vertexmanager.ShuffleVertexManagerBase.ReconfigVertexParams computeRouting()
public static org.apache.tez.dag.library.vertexmanager.FairShuffleVertexManager.FairShuffleVertexManagerConfigBuilder createConfigBuilder(@Nullable org.apache.hadoop.conf.Configuration conf)
VertexManagerPluginDescriptor
builder that can be used to
configure the plugin.conf
- Configuration
May be modified in place. May be null if the
configuration parameters are to be set only via code. If
configuration values may be changed at runtime via a config file
then pass in a Configuration
that is initialized from a
config file. The parameters that are not overridden in code will
be derived from the Configuration object.FairShuffleVertexManager.FairShuffleVertexManagerConfigBuilder
public void onVertexStarted(List<org.apache.tez.runtime.api.TaskAttemptIdentifier> completions)
onVertexStarted
in class org.apache.tez.dag.api.VertexManagerPlugin
public void onSourceTaskCompleted(org.apache.tez.runtime.api.TaskAttemptIdentifier attempt)
onSourceTaskCompleted
in class org.apache.tez.dag.api.VertexManagerPlugin
public void onVertexManagerEventReceived(org.apache.tez.runtime.api.events.VertexManagerEvent vmEvent)
onVertexManagerEventReceived
in class org.apache.tez.dag.api.VertexManagerPlugin
public void initialize()
initialize
in class org.apache.tez.dag.api.VertexManagerPlugin
public void onVertexStateUpdated(org.apache.tez.dag.api.event.VertexStateUpdate stateUpdate)
onVertexStateUpdated
in class org.apache.tez.dag.api.VertexManagerPlugin
Copyright © 2024 Apache Software Foundation. All rights reserved.