public class PartitionSchema extends ChangedFlag implements Cloneable, org.pentaho.di.shared.SharedObjectInterface, ResourceHolderInterface, org.pentaho.di.repository.RepositoryElementInterface, org.pentaho.di.core.xml.XMLInterface
| Modifier and Type | Field and Description |
|---|---|
static org.pentaho.di.repository.RepositoryObjectType |
REPOSITORY_ELEMENT_TYPE |
static String |
XML_TAG |
| Constructor and Description |
|---|
PartitionSchema() |
PartitionSchema(Node partitionSchemaNode) |
PartitionSchema(String name,
List<String> partitionIDs) |
| Modifier and Type | Method and Description |
|---|---|
Object |
clone() |
boolean |
equals(Object obj) |
void |
expandPartitionsDynamically(int nrSlaves,
org.pentaho.di.core.variables.VariableSpace space) |
Date |
getChangedDate() |
String |
getDescription() |
String |
getHolderType()
Gets the high-level type of resource holder.
|
String |
getName() |
String |
getNumberOfPartitionsPerSlave() |
org.pentaho.di.repository.ObjectId |
getObjectId() |
org.pentaho.di.repository.ObjectRevision |
getObjectRevision() |
List<String> |
getPartitionIDs() |
org.pentaho.di.repository.RepositoryDirectoryInterface |
getRepositoryDirectory()
Not supported for Partition schema, return the root.
|
org.pentaho.di.repository.RepositoryObjectType |
getRepositoryElementType() |
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 |
setChangedDate(Date changedDate) |
void |
setDescription(String description) |
void |
setDynamicallyDefined(boolean dynamicallyDefined) |
void |
setName(String name) |
void |
setNumberOfPartitionsPerSlave(String numberOfPartitionsPerSlave) |
void |
setObjectId(org.pentaho.di.repository.ObjectId id) |
void |
setObjectRevision(org.pentaho.di.repository.ObjectRevision objectRevision) |
void |
setPartitionIDs(List<String> partitionIDs) |
void |
setRepositoryDirectory(org.pentaho.di.repository.RepositoryDirectoryInterface repositoryDirectory) |
void |
setShared(boolean shared) |
String |
toString() |
addObserver, clearChanged, deleteObserver, hasChanged, notifyObservers, setChanged, setChangedpublic static final String XML_TAG
public static final org.pentaho.di.repository.RepositoryObjectType REPOSITORY_ELEMENT_TYPE
public PartitionSchema()
public PartitionSchema(String name, List<String> partitionIDs)
name - partitionIDs - public PartitionSchema(Node partitionSchemaNode)
public void replaceMeta(PartitionSchema partitionSchema)
public String getName()
getName in interface org.pentaho.di.repository.RepositoryElementInterfacegetName in interface org.pentaho.di.repository.RepositoryObjectInterfacegetName in interface ResourceHolderInterfacegetName in interface org.pentaho.di.shared.SharedObjectInterfacepublic void setName(String name)
setName in interface org.pentaho.di.repository.RepositoryElementInterfacename - the name to setpublic void setPartitionIDs(List<String> partitionIDs)
partitionIDs - the partitionIDs to setpublic String getXML()
getXML in interface org.pentaho.di.core.xml.XMLInterfacegetXML in interface org.pentaho.di.shared.SharedObjectInterfacepublic boolean isShared()
isShared in interface org.pentaho.di.shared.SharedObjectInterfacepublic void setShared(boolean shared)
setShared in interface org.pentaho.di.shared.SharedObjectInterfaceshared - the shared to setpublic org.pentaho.di.repository.ObjectId getObjectId()
getObjectId in interface org.pentaho.di.repository.RepositoryElementInterfacegetObjectId in interface org.pentaho.di.repository.RepositoryObjectInterfacegetObjectId in interface ResourceHolderInterfacepublic String getDescription()
getDescription in interface org.pentaho.di.repository.RepositoryElementInterfacegetDescription in interface ResourceHolderInterfacepublic String getHolderType()
ResourceHolderInterfacegetHolderType in interface ResourceHolderInterfacepublic String getTypeId()
getTypeId in interface ResourceHolderInterfacepublic boolean isDynamicallyDefined()
public void setDynamicallyDefined(boolean dynamicallyDefined)
dynamicallyDefined - the dynamicallyDefined to setpublic String getNumberOfPartitionsPerSlave()
public void setNumberOfPartitionsPerSlave(String numberOfPartitionsPerSlave)
numberOfPartitionsPerSlave - the number of partitions per slave to set...public void expandPartitionsDynamically(int nrSlaves,
org.pentaho.di.core.variables.VariableSpace space)
public void retainPartitionsForSlaveServer(int slaveCount,
int slaveNumber)
slaveCount - slaveNumber - public org.pentaho.di.repository.RepositoryDirectoryInterface getRepositoryDirectory()
getRepositoryDirectory in interface org.pentaho.di.repository.RepositoryElementInterfacepublic void setRepositoryDirectory(org.pentaho.di.repository.RepositoryDirectoryInterface repositoryDirectory)
setRepositoryDirectory in interface org.pentaho.di.repository.RepositoryElementInterfacepublic org.pentaho.di.repository.RepositoryObjectType getRepositoryElementType()
getRepositoryElementType in interface org.pentaho.di.repository.RepositoryElementInterfacepublic void setObjectId(org.pentaho.di.repository.ObjectId id)
setObjectId in interface org.pentaho.di.repository.RepositoryElementInterfacepublic org.pentaho.di.repository.ObjectRevision getObjectRevision()
getObjectRevision in interface org.pentaho.di.repository.RepositoryElementInterfacepublic void setObjectRevision(org.pentaho.di.repository.ObjectRevision objectRevision)
setObjectRevision in interface org.pentaho.di.repository.RepositoryElementInterfacepublic void setDescription(String description)
setDescription in interface org.pentaho.di.repository.RepositoryElementInterfacepublic Date getChangedDate()
getChangedDate in interface org.pentaho.di.shared.SharedObjectInterfacepublic void setChangedDate(Date changedDate)
changedDate - the changedDate to set