| java.lang.Object org.griphyn.cPlanner.partitioner.Partitioner org.griphyn.cPlanner.partitioner.BFS org.griphyn.cPlanner.partitioner.Horizontal
Horizontal | public class Horizontal extends BFS (Code) | | Horizontal based partitioning scheme, that allows the user to configure the
number of partitions per transformation name per level.
To set the size of the partition per transformation, the following properties
need to be set
pegasus.partitioner.horizontal.collapse.[txName]
pegasus.partitioner.horizontal.bundle.[txName]
The bundle value designates the number of partitions per transformation per level.
The collapse values designates the number of nodes in a partitioning referring
to a particular transformation. If both are specified, then bundle value takes
precedence.
author: Karan Vahi version: $Revision: 50 $ |
Field Summary | |
final public static int | DEFAULT_COLLAPSE_FACTOR The default collapse factor for collapsing jobs with same logical name
scheduled onto the same execution pool. | final public static String | DESCRIPTION A short description about the partitioner. |
Method Summary | |
protected void | constructLevelRelations(Callback c, int parent, int child) Calls out to the callback with appropriate relations between the partitions
constructed for the levels. | protected void | constructPartitions(Callback c, List nodes, int level) Given a list of jobs, constructs (one or more) partitions out of it. | protected void | constructPartitions(Callback c, List nodes, int level, String name) Given a list of jobs, constructs (one or more) partitions out of it. | protected Partition | createPartition(List nodes) Creates a partition out of a list of nodes. | public String | description() Returns a textual description of the partitioner implementation. | protected void | done(Callback c) Indicates that we are done with the traversal of the graph. | protected int[] | getCollapseFactor(String txName, int size) Returns the collapse factor, that is used to determine the number of nodes
going in a partition. |
DEFAULT_COLLAPSE_FACTOR | final public static int DEFAULT_COLLAPSE_FACTOR(Code) | | The default collapse factor for collapsing jobs with same logical name
scheduled onto the same execution pool.
|
DESCRIPTION | final public static String DESCRIPTION(Code) | | A short description about the partitioner.
|
Horizontal | public Horizontal(GraphNode root, Map graph, PegasusProperties properties)(Code) | | The overloaded constructor.
Parameters: root - the dummy root node of the graph. Parameters: graph - the map containing all the nodes of the graph keyed bythe logical id of the nodes. Parameters: properties - the properties passed to the planner. |
constructLevelRelations | protected void constructLevelRelations(Callback c, int parent, int child)(Code) | | Calls out to the callback with appropriate relations between the partitions
constructed for the levels. This is an empty implementation, as we
do our own book-keeping in this partitioner to determine the relations
between the partitions.
Parameters: c - the parititoner callback Parameters: parent - the parent level Parameters: child - the child level. See Also: Horizontal.done(Callback) |
constructPartitions | protected void constructPartitions(Callback c, List nodes, int level)(Code) | | Given a list of jobs, constructs (one or more) partitions out of it.
Calls out to the partitioner callback, for each of the partitions
constructed.
Parameters: c - the parititoner callback Parameters: nodes - the list of GraphNode objects on a particular level. Parameters: level - the level as determined from the root of the workflow. |
constructPartitions | protected void constructPartitions(Callback c, List nodes, int level, String name)(Code) | | Given a list of jobs, constructs (one or more) partitions out of it.
Calls out to the partitioner callback, for each of the partitions
constructed.
Parameters: c - the parititoner callback Parameters: nodes - the list of GraphNode objects on a particular level,referring to the same transformation underneath. Parameters: level - the level as determined from the root of the workflow. Parameters: name - the transformation name |
createPartition | protected Partition createPartition(List nodes)(Code) | | Creates a partition out of a list of nodes. Also stores it in the internal
partition map to track partitions later on. Associates the partition ID
with each of the nodes making the partition also.
Parameters: nodes - the list of GraphNodes making the partition. the partition out of those nodes. |
description | public String description()(Code) | | Returns a textual description of the partitioner implementation.
a short textual description |
done | protected void done(Callback c)(Code) | | Indicates that we are done with the traversal of the graph. Determines
the relations between the partitions constructed and calls out to the
appropriate callback function
Parameters: c - the partitioner callback |
getCollapseFactor | protected int[] getCollapseFactor(String txName, int size)(Code) | | Returns the collapse factor, that is used to determine the number of nodes
going in a partition. The collapse factor is determined by
getting the collapse and the bundle values specified for the transformations
in the properties file.
There are two orthogonal notions of bundling and collapsing. In case the
bundle key is specified, it ends up overriding the collapse key, and
the bundle value is used to generate the collapse values.
If both are not specified or null, then collapseFactor is set to size.
Parameters: txName - the logical transformation name Parameters: size - the number of jobs that refer to the same logicaltransformation and are scheduled on the same execution pool. int array of size 2 where :-int[0] is the the collapse factor (number of nodes in a partition)int[1] is the number of parititons for whom collapsing is int[0] + 1. |
Fields inherited from org.griphyn.cPlanner.partitioner.BFS | final public static String DESCRIPTION(Code)(Java Doc)
|
|
|