Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.pentaho.di.partition
Class PartitionSchema

    java.lang.Object
      org.pentaho.di.core.changed.ChangedFlag
          org.pentaho.di.partition.PartitionSchema

All Implemented Interfaces:
  Cloneable, ChangedFlagInterface, ResourceHolderInterface, org.pentaho.di.shared.SharedObjectInterface

    public class PartitionSchema

extends ChangedFlag
implements Cloneable, org.pentaho.di.shared.SharedObjectInterface, ResourceHolderInterface

A partition schema allow you to partition a step according into a number of partitions that run independendly. It allows us to "map"

Author:
  Matt

Field Summary
`static String` | `XML_TAG`

Constructor Summary
`PartitionSchema()`
`PartitionSchema(Node partitionSchemaNode)`
`PartitionSchema(Repository rep, long id_partition_schema)`
`PartitionSchema(String name, List<String> partitionIDs)`

Method Summary
`Object` | `clone()`
`boolean` | `equals(Object obj)`
`void` | `expandPartitionsDynamically(int nrSlaves, org.pentaho.di.core.variables.VariableSpace space)`
`String` | `getDescription()`
`String` | `getHolderType()` Gets the high-level type of resource holder.
`long` | `getId()`
`long` | `getID()`
`String` | `getName()`
`String` | `getNumberOfPartitionsPerSlave()`
`List<String>` | `getPartitionIDs()`
`String` | `getTypeId()`
`String` | `getXML()`
`int` | `hashCode()`
`boolean` | `isDynamicallyDefined()`
`boolean` | `isShared()`
`void` | `replaceMeta(PartitionSchema partitionSchema)`
`void` | `retainPartitionsForSlaveServer(int slaveCount, int slaveNumber)` Slaves don't need ALL the partitions, they just need a few. So we should only retain those partitions that are of interest to the slave server. Divide the number of partitions (6) through the number of slaves (2) That gives you 0, 1, 2, 3, 4, 5 Slave 0 : 0, 2, 4 Slave 1 : 1, 3, 5 --> slaveNumber == partitionNr % slaveCount
`void` | `saveRep(Repository rep)`
`void` | `saveRep(Repository rep, long id_transformation, boolean isUsedByTransformation)`
`void` | `setDynamicallyDefined(boolean dynamicallyDefined)`
`void` | `setId(long id)`
`void` | `setName(String name)`
`void` | `setNumberOfPartitionsPerSlave(String numberOfPartitionsPerSlave)`
`void` | `setPartitionIDs(List<String> partitionIDs)`
`void` | `setShared(boolean shared)`
`String` | `toString()`

Methods inherited from class org.pentaho.di.core.changed.ChangedFlag
`addObserver, clearChanged, deleteObserver, hasChanged, notifyObservers, setChanged, setChanged`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### XML_TAG

    public static final String XML_TAG

See Also:
  Constant Field Values

Constructor Detail

### PartitionSchema

    public PartitionSchema()

### PartitionSchema

    public PartitionSchema(String name,
                           List<String> partitionIDs)

Parameters:
  `name` -
  `partitionIDs` -

### PartitionSchema

    public PartitionSchema(Node partitionSchemaNode)

### PartitionSchema

    public PartitionSchema(Repository rep,
                           long id_partition_schema)
                    throws org.pentaho.di.core.exception.KettleException

Throws:
  `org.pentaho.di.core.exception.KettleException`

Method Detail

### clone

    public Object clone()

  Overrides:
    `clone` in class `Object`

### replaceMeta

    public void replaceMeta(PartitionSchema partitionSchema)

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### getName

    public String getName()

  Specified by:
    `getName` in interface `ResourceHolderInterface`
  Specified by:
    `getName` in interface `org.pentaho.di.shared.SharedObjectInterface`
  Returns:
    the name

### setName

    public void setName(String name)

  Parameters:
    `name` - the name to set

### getPartitionIDs

    public List<String> getPartitionIDs()

  Returns:
    the partitionIDs

### setPartitionIDs

    public void setPartitionIDs(List<String> partitionIDs)

  Parameters:
    `partitionIDs` - the partitionIDs to set

### getXML

    public String getXML()

  Specified by:
    `getXML` in interface `org.pentaho.di.shared.SharedObjectInterface`

### saveRep

    public void saveRep(Repository rep)
                 throws org.pentaho.di.core.exception.KettleException

  Throws:
    `org.pentaho.di.core.exception.KettleException`

### saveRep

    public void saveRep(Repository rep,
                        long id_transformation,
                        boolean isUsedByTransformation)
                 throws org.pentaho.di.core.exception.KettleException

  Throws:
    `org.pentaho.di.core.exception.KettleException`

### isShared

    public boolean isShared()

  Specified by:
    `isShared` in interface `org.pentaho.di.shared.SharedObjectInterface`
  Returns:
    the shared

### setShared

    public void setShared(boolean shared)

  Specified by:
    `setShared` in interface `org.pentaho.di.shared.SharedObjectInterface`
  Parameters:
    `shared` - the shared to set

### getId

    public long getId()

  Returns:
    the id

### getID

    public long getID()

  Specified by:
    `getID` in interface `ResourceHolderInterface`
  Returns:
    the id

### setId

    public void setId(long id)

  Parameters:
    `id` - the id to set

### getDescription

    public String getDescription()

  Specified by:
    `getDescription` in interface `ResourceHolderInterface`
  Returns:
    The description of the holder of the resource

### getHolderType

    public String getHolderType()

  Description copied from interface: `ResourceHolderInterface`
  Gets the high-level type of resource holder.

  Specified by:
    `getHolderType` in interface `ResourceHolderInterface`
  Returns:
    JOBENTRY, STEP, etc.

### getTypeId

    public String getTypeId()

  Specified by:
    `getTypeId` in interface `ResourceHolderInterface`
  Returns:
    The Type ID of the resource holder. The Type ID is the system-defined type identifier (like TRANS or SORT).

### isDynamicallyDefined

    public boolean isDynamicallyDefined()

  Returns:
    the dynamicallyDefined

### setDynamicallyDefined

    public void setDynamicallyDefined(boolean dynamicallyDefined)

  Parameters:
    `dynamicallyDefined` - the dynamicallyDefined to set

### getNumberOfPartitionsPerSlave

    public String getNumberOfPartitionsPerSlave()

  Returns:
    the numberOfStepCopiesPerSlave

### setNumberOfPartitionsPerSlave

    public void setNumberOfPartitionsPerSlave(String numberOfPartitionsPerSlave)

  Parameters:
    `numberOfPartitionsPerSlave` - the number of partitions per slave to set...

### expandPartitionsDynamically

    public void expandPartitionsDynamically(int nrSlaves,
                                            org.pentaho.di.core.variables.VariableSpace space)

### retainPartitionsForSlaveServer

    public void retainPartitionsForSlaveServer(int slaveCount,
                                               int slaveNumber)

  Slaves don't need ALL the partitions, they just need a few.
  So we should only retain those partitions that are of interest to the slave server.
  Divide the number of partitions (6) through the number of slaves (2)
  That gives you 0, 1, 2, 3, 4, 5
  Slave 0 : 0, 2, 4
  Slave 1 : 1, 3, 5
  --> slaveNumber == partitionNr % slaveCount

  Parameters:
    `slaveCount` -
    `slaveNumber` -

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD