Class AlignedChunkReader
- java.lang.Object
-
- org.apache.iotdb.tsfile.read.reader.chunk.AlignedChunkReader
-
- All Implemented Interfaces:
IChunkReader
public class AlignedChunkReader extends java.lang.Object implements IChunkReader
-
-
Constructor Summary
Constructors Constructor Description AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList)Constructor of ChunkReader without deserializing chunk into page.AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList, Filter filter)constructor of ChunkReader.AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList, Filter filter, long currentTimestamp)Constructor of ChunkReader by timestamp.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()booleanhasNextSatisfiedPage()java.util.List<IPageReader>loadPageReaderList()BatchDatanextPageData()protected booleanpageSatisfied(PageHeader pageHeader, java.util.List<TimeRange> valueDeleteInterval)used for value page filterTsBlockreadPageData(PageHeader timePageHeader, java.util.List<PageHeader> valuePageHeaders, java.nio.ByteBuffer compressedTimePageData, java.util.List<java.nio.ByteBuffer> compressedValuePageDatas)Read data from compressed page data.
-
-
-
Field Detail
-
filter
protected Filter filter
-
-
Constructor Detail
-
AlignedChunkReader
public AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList)
Constructor of ChunkReader without deserializing chunk into page. This is used for fast compaction.
-
AlignedChunkReader
public AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList, Filter filter) throws java.io.IOException
constructor of ChunkReader.- Parameters:
filter- filter- Throws:
java.io.IOException
-
AlignedChunkReader
public AlignedChunkReader(Chunk timeChunk, java.util.List<Chunk> valueChunkList, Filter filter, long currentTimestamp) throws java.io.IOException
Constructor of ChunkReader by timestamp. This constructor is used to accelerate queries by filtering out pages whose endTime is less than current timestamp.- Throws:
java.io.IOException
-
-
Method Detail
-
pageSatisfied
protected boolean pageSatisfied(PageHeader pageHeader, java.util.List<TimeRange> valueDeleteInterval)
used for value page filter
-
readPageData
public TsBlock readPageData(PageHeader timePageHeader, java.util.List<PageHeader> valuePageHeaders, java.nio.ByteBuffer compressedTimePageData, java.util.List<java.nio.ByteBuffer> compressedValuePageDatas) throws java.io.IOException
Read data from compressed page data. Uncompress the page and decode it to tsblock data.- Throws:
java.io.IOException
-
hasNextSatisfiedPage
public boolean hasNextSatisfiedPage()
- Specified by:
hasNextSatisfiedPagein interfaceIChunkReader
-
nextPageData
public BatchData nextPageData() throws java.io.IOException
- Specified by:
nextPageDatain interfaceIChunkReader- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfaceIChunkReader- Throws:
java.io.IOException
-
loadPageReaderList
public java.util.List<IPageReader> loadPageReaderList()
- Specified by:
loadPageReaderListin interfaceIChunkReader
-
-