Class SlidingWindowGroupByExecutor
- java.lang.Object
-
- org.apache.iotdb.db.query.executor.groupby.SlidingWindowGroupByExecutor
-
- Direct Known Subclasses:
EmptyQueueSlidingWindowGroupByExecutor,MonotonicQueueSlidingWindowGroupByExecutor,NormalQueueSlidingWindowGroupByExecutor,SmoothQueueSlidingWindowGroupByExecutor
public abstract class SlidingWindowGroupByExecutor extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected AggregateResultaggregateResultprotected longcurEndTimeprotected longcurStartTimeprotected java.util.Deque<AggregateResult>deque
-
Constructor Summary
Constructors Constructor Description SlidingWindowGroupByExecutor(org.apache.iotdb.tsfile.file.metadata.enums.TSDataType dataType, java.lang.String aggrFuncName, boolean ascending)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidevictingExpiredValue()evicting expired element in queue and reset expired aggregateResultAggregateResultgetAggregateResult()protected booleaninTimeRange(long curTime)voidsetTimeRange(long curStartTime, long curEndTime)abstract voidupdate(AggregateResult aggregateResult)update queue and aggregateResult
-
-
-
Field Detail
-
curStartTime
protected long curStartTime
-
curEndTime
protected long curEndTime
-
deque
protected java.util.Deque<AggregateResult> deque
-
aggregateResult
protected AggregateResult aggregateResult
-
-
Method Detail
-
update
public abstract void update(AggregateResult aggregateResult)
update queue and aggregateResult
-
evictingExpiredValue
protected abstract void evictingExpiredValue()
evicting expired element in queue and reset expired aggregateResult
-
getAggregateResult
public AggregateResult getAggregateResult()
-
setTimeRange
public void setTimeRange(long curStartTime, long curEndTime)
-
inTimeRange
protected boolean inTimeRange(long curTime)
-
-