Interface ColumnMerger
-
- All Known Implementing Classes:
MultiColumnMerger,NonOverlappedMultiColumnMerger,SingleColumnMerger
public interface ColumnMergerused to merge columns belonging to same series into one column
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description static booleanempty(int tsBlockIndex, org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex)voidmergeColumn(org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex, int[] updatedInputIndex, long currentTime, org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder columnBuilder)merge columns belonging to same series into one column, merge just one row whose time is equal to currentTimevoidmergeColumn(org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex, int[] updatedInputIndex, org.apache.iotdb.tsfile.read.common.block.column.TimeColumnBuilder timeBuilder, long currentEndTime, org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder columnBuilder)merge columns belonging to same series into one column, merge until each input column's time is larger than currentEndTime
-
-
-
Method Detail
-
empty
static boolean empty(int tsBlockIndex, org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex)- Parameters:
tsBlockIndex- indexinputTsBlocks- input TsBlock arrayinputIndex- current index for each input TsBlock and size of it is equal to inputTsBlocks- Returns:
- true if TsBlock at tsBlockIndex is null or its current read index is larger than its size
-
mergeColumn
void mergeColumn(org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex, int[] updatedInputIndex, org.apache.iotdb.tsfile.read.common.block.column.TimeColumnBuilder timeBuilder, long currentEndTime, org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder columnBuilder)merge columns belonging to same series into one column, merge until each input column's time is larger than currentEndTime- Parameters:
inputTsBlocks- all source TsBlocks, some of which will contain source columninputIndex- start index for each source TsBlock and size of it is equal to inputTsBlocks, we should only read from this array and not update it because others will use the start index value in inputIndex arrayupdatedInputIndex- current index for each source TsBlock after mergingtimeBuilder- result time column, which is already generated and used to indicate each row's timestampcurrentEndTime- merge until each input column's time is larger than currentEndTimecolumnBuilder- used to write merged value into
-
mergeColumn
void mergeColumn(org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex, int[] updatedInputIndex, long currentTime, org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder columnBuilder)merge columns belonging to same series into one column, merge just one row whose time is equal to currentTime- Parameters:
inputTsBlocks- all source TsBlocks, some of which will contain source columninputIndex- start index for each source TsBlock and size of it is equal to inputTsBlocks, we should only read from this array and not update it because others will use the start index value in inputIndex arrayupdatedInputIndex- current index for each source TsBlock after mergingcurrentTime- merge just one row whose time is equal to currentTimecolumnBuilder- used to write merged value into
-
-