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, JoinCompiler joinCompiler, 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.intgetPhysicalPosition(int groupId) longgetRawHash(int groupId)
-
Constructor Details
-
FlatGroupByHash
public FlatGroupByHash(List<Type> hashTypes, boolean hasPrecomputedHash, int expectedSize, boolean processDictionary, JoinCompiler joinCompiler, 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
-