Class ReindexingPartitioningRule
- All Implemented Interfaces:
ReindexingRule
ReindexingRule that specifies partitioning configuration for reindexing tasks.
This rule controls how data is physically laid out into segments during reindexing, combining segment granularity (time bucketing) and partitions spec (how data within a time bucket is split). It also supports optional virtual columns for partitioning by nested column fields.
This is a non-additive rule. Multiple partitioning rules cannot be applied to the same interval.
Example inline usage:
{
"id": "daily-range-30d",
"olderThan": "P30D",
"segmentGranularity": "DAY",
"partitionsSpec": {
"type": "range",
"targetRowsPerSegment": 5000000,
"partitionDimensions": ["country", "city"]
},
"description": "Compact to daily segments with range partitioning for data older than 30 days"
}
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.druid.server.compaction.ReindexingRule
ReindexingRule.AppliesToMode -
Constructor Summary
ConstructorsConstructorDescriptionReindexingPartitioningRule(String id, String description, org.joda.time.Period olderThan, Granularity segmentGranularity, PartitionsSpec partitionsSpec, VirtualColumns virtualColumns) -
Method Summary
Modifier and TypeMethodDescriptionbooleaninthashCode()static ReindexingPartitioningRulesyntheticRule(Granularity segmentGranularity, PartitionsSpec partitionsSpec, VirtualColumns virtualColumns) Creates a synthetic partitioning rule used to carry default partitioning configuration for intervals not covered by any user-defined partitioning rule.toString()Methods inherited from class org.apache.druid.server.compaction.AbstractReindexingRule
appliesTo, getDescription, getId, getOlderThan
-
Constructor Details
-
ReindexingPartitioningRule
public ReindexingPartitioningRule(@Nonnull String id, @Nullable String description, @Nonnull org.joda.time.Period olderThan, @Nonnull Granularity segmentGranularity, @Nonnull PartitionsSpec partitionsSpec, @Nullable VirtualColumns virtualColumns)
-
-
Method Details
-
syntheticRule
public static ReindexingPartitioningRule syntheticRule(Granularity segmentGranularity, PartitionsSpec partitionsSpec, @Nullable VirtualColumns virtualColumns) Creates a synthetic partitioning rule used to carry default partitioning configuration for intervals not covered by any user-defined partitioning rule.Synthetic rules are created by
org.apache.druid.indexing.compact.CascadingReindexingTemplateto represent the template's default segment granularity, partitions spec, and optional virtual columns. They use a fixed ID and zero-length period since these fields are not meaningful for synthetic rules — only the partitioning configuration (granularity, partitionsSpec, virtualColumns) is used. -
getSegmentGranularity
-
getPartitionsSpec
-
getVirtualColumns
-
equals
-
hashCode
public int hashCode() -
toString
-