class Aggregation extends TBase[Aggregation, _Fields] with Serializable with Cloneable with Comparable[Aggregation]
Chronon provides a powerful aggregations primitive - that takes the familiar aggregation operation, via groupBy in SQL and extends it with three things - windowing, bucketing and auto-explode.
- Annotations
- @SuppressWarnings() @Generated()
- Alphabetic
- By Inheritance
- Aggregation
- Cloneable
- TBase
- Serializable
- TSerializable
- Comparable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Aggregation(other: Aggregation)
Performs a deep copy on other.
- new Aggregation()
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addToBuckets(elem: String): Unit
- def addToWindows(elem: Window): Unit
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clear(): Unit
- Definition Classes
- Aggregation → TBase
- Annotations
- @Override()
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def compareTo(other: Aggregation): Int
- Definition Classes
- Aggregation → Comparable
- Annotations
- @Override()
- def deepCopy(): Aggregation
- Definition Classes
- Aggregation → TBase
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(that: Aggregation): Boolean
- def equals(that: AnyRef): Boolean
- Definition Classes
- Aggregation → AnyRef → Any
- Annotations
- @Override()
- def fieldForId(fieldId: Int): _Fields
- Definition Classes
- Aggregation → TBase
- Annotations
- @Nullable()
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def getArgMap(): Map[String, String]
Extra arguments that needs to be passed to some of the operations like LAST_K, APPROX_PERCENTILE.
Extra arguments that needs to be passed to some of the operations like LAST_K, APPROX_PERCENTILE.
- Annotations
- @Nullable()
- def getArgMapSize(): Int
- def getBuckets(): List[String]
This is an additional layer of aggregation.
This is an additional layer of aggregation. You can key a group_by by user, and bucket a “item_view” count by “item_category”. This will produce one row per user, with column containing map of “item_category” to “view_count”. You can specify multiple such buckets at once
- Annotations
- @Nullable()
- def getBucketsIterator(): Iterator[String]
- Annotations
- @Nullable()
- def getBucketsSize(): Int
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getFieldValue(field: _Fields): AnyRef
- Definition Classes
- Aggregation → TBase
- Annotations
- @Nullable()
- def getInputColumn(): String
The column as specified in source.query.selects - on which we need to aggregate with.
The column as specified in source.query.selects - on which we need to aggregate with.
- Annotations
- @Nullable()
- def getOperation(): Operation
The type of aggregation that needs to be performed on the inputColumn.
The type of aggregation that needs to be performed on the inputColumn.
- Annotations
- @Nullable()
- See also
Operation
- def getWindows(): List[Window]
For TEMPORAL case windows are sawtooth.
For TEMPORAL case windows are sawtooth. Meaning head slides ahead continuously in time, whereas, the tail only hops ahead, at discrete points in time. Hop is determined by the window size automatically. The maximum hop size is 1/12 of window size. You can specify multiple such windows at once.
- Window > 12 days -> Hop Size = 1 day
- Window > 12 hours -> Hop Size = 1 hr
- Window > 1hr -> Hop Size = 5 minutes
- Annotations
- @Nullable()
- def getWindowsIterator(): Iterator[Window]
- Annotations
- @Nullable()
- def getWindowsSize(): Int
- def hashCode(): Int
- Definition Classes
- Aggregation → AnyRef → Any
- Annotations
- @Override()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isSet(field: _Fields): Boolean
Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
- Definition Classes
- Aggregation → TBase
- def isSetArgMap(): Boolean
Returns true if field argMap is set (has been assigned a value) and false otherwise
- def isSetBuckets(): Boolean
Returns true if field buckets is set (has been assigned a value) and false otherwise
- def isSetInputColumn(): Boolean
Returns true if field inputColumn is set (has been assigned a value) and false otherwise
- def isSetOperation(): Boolean
Returns true if field operation is set (has been assigned a value) and false otherwise
- def isSetWindows(): Boolean
Returns true if field windows is set (has been assigned a value) and false otherwise
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def putToArgMap(key: String, val: String): Unit
- def read(iprot: TProtocol): Unit
- Definition Classes
- Aggregation → TSerializable
- def setArgMap(argMap: Map[String, String]): Aggregation
Extra arguments that needs to be passed to some of the operations like LAST_K, APPROX_PERCENTILE.
- def setArgMapIsSet(value: Boolean): Unit
- def setBuckets(buckets: List[String]): Aggregation
This is an additional layer of aggregation.
This is an additional layer of aggregation. You can key a group_by by user, and bucket a “item_view” count by “item_category”. This will produce one row per user, with column containing map of “item_category” to “view_count”. You can specify multiple such buckets at once
- def setBucketsIsSet(value: Boolean): Unit
- def setFieldValue(field: _Fields, value: AnyRef): Unit
- Definition Classes
- Aggregation → TBase
- def setInputColumn(inputColumn: String): Aggregation
The column as specified in source.query.selects - on which we need to aggregate with.
- def setInputColumnIsSet(value: Boolean): Unit
- def setOperation(operation: Operation): Aggregation
The type of aggregation that needs to be performed on the inputColumn.
The type of aggregation that needs to be performed on the inputColumn.
- See also
Operation
- def setOperationIsSet(value: Boolean): Unit
- def setWindows(windows: List[Window]): Aggregation
For TEMPORAL case windows are sawtooth.
For TEMPORAL case windows are sawtooth. Meaning head slides ahead continuously in time, whereas, the tail only hops ahead, at discrete points in time. Hop is determined by the window size automatically. The maximum hop size is 1/12 of window size. You can specify multiple such windows at once.
- Window > 12 days -> Hop Size = 1 day
- Window > 12 hours -> Hop Size = 1 hr
- Window > 1hr -> Hop Size = 5 minutes
- def setWindowsIsSet(value: Boolean): Unit
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- Aggregation → AnyRef → Any
- Annotations
- @Override()
- def unsetArgMap(): Unit
- def unsetBuckets(): Unit
- def unsetInputColumn(): Unit
- def unsetOperation(): Unit
- def unsetWindows(): Unit
- def validate(): Unit
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def write(oprot: TProtocol): Unit
- Definition Classes
- Aggregation → TSerializable