Package io.trino.operator
Class FlatGroupByHash
java.lang.Object
io.trino.operator.FlatGroupByHash
- All Implemented Interfaces:
GroupByHash
-
Constructor Summary
ConstructorsConstructorDescriptionFlatGroupByHash(List<Type> hashTypes, boolean hasPrecomputedHash, int expectedSize, boolean processDictionary, FlatHashStrategyCompiler hashStrategyCompiler, UpdateMemory checkMemoryReservation) -
Method Summary
Modifier and TypeMethodDescriptionWork<?> voidappendValuesTo(int groupId, PageBuilder pageBuilder) intlongintWork<int[]> getGroupIds(Page page) The order of new group ids need to be the same as the order of incoming rows, i.e. new group ids should be assigned in rows iteration order Example: rows: A B C B D A E group ids: 1 2 3 2 4 1 5intgetPhysicalPosition(int groupId) longgetRawHash(int groupId)
-
Constructor Details
-
FlatGroupByHash
public FlatGroupByHash(List<Type> hashTypes, boolean hasPrecomputedHash, int expectedSize, boolean processDictionary, FlatHashStrategyCompiler hashStrategyCompiler, UpdateMemory checkMemoryReservation)
-
-
Method Details
-
getPhysicalPosition
public int getPhysicalPosition(int groupId) -
getRawHash
public long getRawHash(int groupId) - Specified by:
getRawHashin interfaceGroupByHash
-
getEstimatedSize
public long getEstimatedSize()- Specified by:
getEstimatedSizein interfaceGroupByHash
-
getGroupCount
public int getGroupCount()- Specified by:
getGroupCountin interfaceGroupByHash
-
appendValuesTo
- Specified by:
appendValuesToin interfaceGroupByHash
-
addPage
- Specified by:
addPagein interfaceGroupByHash
-
getGroupIds
Description copied from interface:GroupByHashThe order of new group ids need to be the same as the order of incoming rows, i.e. new group ids should be assigned in rows iteration order Example: rows: A B C B D A E group ids: 1 2 3 2 4 1 5- Specified by:
getGroupIdsin interfaceGroupByHash
-
getCapacity
public int getCapacity()- Specified by:
getCapacityin interfaceGroupByHash
-