-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Execution Team 2022-10-17
-
0
We want to allow users to set 'bucketMaxSpanSeconds' and 'bucketRoundingSeconds' directly when they create a new time-series collection. We will enforce that 'bucketRoundingSeconds' is equal to 'bucketMaxSpanSeconds', and that both are strictly positive. If a user sets one value, they must set both. If a user sets these values, they cannot also set 'granularity'.
Context:
- bucketMaxSpanSeconds: "The maximum range of time values for a bucket, in seconds"
- bucketRoundingSeconds: "Used to determine the minimum time boundary when opening a new bucket by rounding the first timestamp down to the next multiple of this value. Specified in seconds."
Valid examples of timeseries options passed through to the create command:
- {timeseries: {timeField: "time", granularity: "seconds"}}
- {timeseries: {timeField: "time", bucketRoundingSeconds: 3600, bucketMaxSpanSeconds: 3600}}
- {timeseries: {timeField: "time", bucketRoundingSeconds: 8000, bucketMaxSpanSeconds: 8000}}
- {timeseries: {timeField: "time", granularity: "seconds", bucketRoundingSeconds: 60, bucketMaxSpanSeconds: 3600}} // this is not an expected use case of the parameters but is allowed since the bucketMaxSpanSeconds and bucketRoundingSeconds are the default values corresponding to the 'seconds' granularity
- depends on
-
SERVER-67595 Introduce bucketRoundingSeconds time-series option
- Closed