Class AllGranularity
- java.lang.Object
-
- org.apache.druid.java.util.common.granularity.Granularity
-
- org.apache.druid.java.util.common.granularity.AllGranularity
-
- All Implemented Interfaces:
Cacheable
public class AllGranularity extends Granularity
AllGranularty buckets everything into a single bucket
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.druid.java.util.common.granularity.Granularity
Granularity.Formatter
-
-
Field Summary
-
Fields inherited from class org.apache.druid.java.util.common.granularity.Granularity
IS_FINER_THAN
-
-
Constructor Summary
Constructors Constructor Description AllGranularity()
This constructor is public b/c it is serialized and deserialized based on type in GranularityModule
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
bucketStart(long time)
org.joda.time.DateTime
bucketStart(org.joda.time.DateTime time)
boolean
equals(Object o)
byte[]
getCacheKey()
Get a byte array used as a cache key.org.joda.time.format.DateTimeFormatter
getFormatter(Granularity.Formatter type)
Iterable<org.joda.time.Interval>
getIterable(org.joda.time.Interval input)
Return an iterable of granular buckets that overlap a particular interval.int
hashCode()
long
increment(long time)
org.joda.time.DateTime
increment(org.joda.time.DateTime time)
boolean
isAligned(org.joda.time.Interval interval)
No interval is aligned with all granularity since it's infinite.org.joda.time.DateTime
toDate(String filePath, Granularity.Formatter formatter)
String
toString()
-
Methods inherited from class org.apache.druid.java.util.common.granularity.Granularity
bucket, bucketEnd, fromString, getTimeZone, granularitiesFinerThan, isFinerThan, mergeGranularities, toDate, toDateTime, toPath
-
-
-
-
Method Detail
-
getFormatter
public org.joda.time.format.DateTimeFormatter getFormatter(Granularity.Formatter type)
- Specified by:
getFormatter
in classGranularity
-
increment
public long increment(long time)
- Specified by:
increment
in classGranularity
-
increment
public org.joda.time.DateTime increment(org.joda.time.DateTime time)
- Specified by:
increment
in classGranularity
-
bucketStart
public long bucketStart(long time)
- Specified by:
bucketStart
in classGranularity
-
bucketStart
public org.joda.time.DateTime bucketStart(org.joda.time.DateTime time)
- Specified by:
bucketStart
in classGranularity
-
toDate
public org.joda.time.DateTime toDate(String filePath, Granularity.Formatter formatter)
- Specified by:
toDate
in classGranularity
-
isAligned
public boolean isAligned(org.joda.time.Interval interval)
No interval is aligned with all granularity since it's infinite.- Specified by:
isAligned
in classGranularity
-
getCacheKey
public byte[] getCacheKey()
Description copied from interface:Cacheable
Get a byte array used as a cache key.- Returns:
- a cache key
-
getIterable
public Iterable<org.joda.time.Interval> getIterable(org.joda.time.Interval input)
Description copied from class:Granularity
Return an iterable of granular buckets that overlap a particular interval. In cases where the number of granular buckets is very large, the Iterable returned by this method will take an excessive amount of time to compute, and materializing it into a collection will take an excessive amount of memory. For example, this happens in the extreme case of an input interval ofIntervals.ETERNITY
and any granularity other thanGranularities.ALL
, as well as cases like an input interval of ten years withGranularities.SECOND
. To avoid issues stemming from large numbers of buckets, this method should be avoided, and code that uses this method should be rewritten to use some other approach. For example: rather than computing all possible buckets in a wide time range, only process buckets related to actual data points that appear.- Overrides:
getIterable
in classGranularity
-
-