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 of partitionNum and partitions, which represent the unique id of a partition and the number of core partitions, respectively. partitions simply indicates that the atomic update is regarded as completed when partitions partitions are successfully updated, and partitionNum can go beyond it when some types of index tasks are trying to append to existing partitions.
  • Constructor Details

    • NumberedShardSpec

      public NumberedShardSpec(int partitionNum, int partitions)
  • Method Details

    • getPartitionNum

      public int getPartitionNum()
      Description copied from interface: ShardSpec
      Returns the partition ID of this segment.
      Specified by:
      getPartitionNum in interface ShardSpec
    • getLookup

      public ShardSpecLookup getLookup(List<? extends ShardSpec> shardSpecs)
      Specified by:
      getLookup in interface ShardSpec
    • getDomainDimensions

      public List<String> getDomainDimensions()
      Description copied from interface: ShardSpec
      Get dimensions who have possible range for the rows this shard contains.
      Specified by:
      getDomainDimensions in interface ShardSpec
      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: ShardSpec
      if given domain ranges are not possible in this shard, return false; otherwise return true;
      Specified by:
      possibleInDomain in interface ShardSpec
      Returns:
      possibility of in domain
    • getNumCorePartitions

      public int getNumCorePartitions()
      Specified by:
      getNumCorePartitions in interface ShardSpec
    • createChunk

      public <T> PartitionChunk<T> createChunk(T obj)
      Specified by:
      createChunk in interface ShardSpec
    • getType

      public String getType()
      Description copied from interface: ShardSpec
      Get the type name of this ShardSpec.
      Specified by:
      getType in interface ShardSpec
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object