Class NumberedShardSpec
- java.lang.Object
-
- org.apache.druid.timeline.partition.NumberedShardSpec
-
- All Implemented Interfaces:
ShardSpec
- Direct Known Subclasses:
HashBasedNumberedShardSpec
public class NumberedShardSpec extends Object implements ShardSpec
An extendable linear shard spec containing the information of core partitions. This class contains two variables ofpartitionNumandpartitions, which represent the unique id of a partition and the number of core partitions, respectively.partitionssimply indicates that the atomic update is regarded as completed whenpartitionspartitions are successfully updated, andpartitionNumcan go beyond it when some types of index tasks are trying to append to existing partitions.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.druid.timeline.partition.ShardSpec
ShardSpec.Type
-
-
Constructor Summary
Constructors Constructor Description NumberedShardSpec(int partitionNum, int partitions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> PartitionChunk<T>createChunk(T obj)booleanequals(Object o)List<String>getDomainDimensions()Get dimensions who have possible range for the rows this shard contains.ShardSpecLookupgetLookup(List<? extends ShardSpec> shardSpecs)intgetNumCorePartitions()intgetPartitionNum()Returns the partition ID of this segment.StringgetType()Get the type name of this ShardSpec.inthashCode()booleanpossibleInDomain(Map<String,com.google.common.collect.RangeSet<String>> domain)if given domain ranges are not possible in this shard, return false; otherwise return true;StringtoString()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.druid.timeline.partition.ShardSpec
getAtomicUpdateGroupSize, getEndRootPartitionId, getMinorVersion, getStartRootPartitionId, sharePartitionSpace
-
-
-
-
Method Detail
-
getPartitionNum
public int getPartitionNum()
Description copied from interface:ShardSpecReturns the partition ID of this segment.- Specified by:
getPartitionNumin interfaceShardSpec
-
getLookup
public ShardSpecLookup getLookup(List<? extends ShardSpec> shardSpecs)
-
getDomainDimensions
public List<String> getDomainDimensions()
Description copied from interface:ShardSpecGet dimensions who have possible range for the rows this shard contains.- Specified by:
getDomainDimensionsin interfaceShardSpec- Returns:
- list of dimensions who has its possible range. Dimensions with unknown possible range are not listed
-
possibleInDomain
public boolean possibleInDomain(Map<String,com.google.common.collect.RangeSet<String>> domain)
Description copied from interface:ShardSpecif given domain ranges are not possible in this shard, return false; otherwise return true;- Specified by:
possibleInDomainin interfaceShardSpec- Returns:
- possibility of in domain
-
getNumCorePartitions
public int getNumCorePartitions()
- Specified by:
getNumCorePartitionsin interfaceShardSpec
-
createChunk
public <T> PartitionChunk<T> createChunk(T obj)
- Specified by:
createChunkin interfaceShardSpec
-
getType
public String getType()
Description copied from interface:ShardSpecGet the type name of this ShardSpec.
-
-