Interface ColumnMerger

    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      static boolean empty​(int tsBlockIndex, org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks, int[] inputIndex)  
      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
      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
    • Method Detail

      • empty

        static boolean empty​(int tsBlockIndex,
                             org.apache.iotdb.tsfile.read.common.block.TsBlock[] inputTsBlocks,
                             int[] inputIndex)
        Parameters:
        tsBlockIndex - index
        inputTsBlocks - input TsBlock array
        inputIndex - 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 column
        inputIndex - 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 array
        updatedInputIndex - current index for each source TsBlock after merging
        timeBuilder - result time column, which is already generated and used to indicate each row's timestamp
        currentEndTime - merge until each input column's time is larger than currentEndTime
        columnBuilder - 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 column
        inputIndex - 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 array
        updatedInputIndex - current index for each source TsBlock after merging
        currentTime - merge just one row whose time is equal to currentTime
        columnBuilder - used to write merged value into