Class AbstractCompactionWriter
- java.lang.Object
-
- org.apache.iotdb.db.engine.compaction.writer.AbstractCompactionWriter
-
- All Implemented Interfaces:
java.lang.AutoCloseable
- Direct Known Subclasses:
CrossSpaceCompactionWriter,InnerSpaceCompactionWriter
public abstract class AbstractCompactionWriter extends java.lang.Object implements java.lang.AutoCloseable
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.iotdb.tsfile.write.chunk.IChunkWriter[]chunkWritersprotected java.lang.StringdeviceIdprotected booleanisAlignprotected int[]measurementPointCountArrayprotected static intsubTaskNum
-
Constructor Summary
Constructors Constructor Description AbstractCompactionWriter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected booleancheckChunkSize(int subTaskId)protected voidcheckChunkSizeAndMayOpenANewChunk(org.apache.iotdb.tsfile.write.writer.TsFileIOWriter fileWriter, int subTaskId)abstract voidclose()abstract voidendChunkGroup()abstract voidendFile()abstract voidendMeasurement(int subTaskId)protected voidflushChunkToFileWriter(org.apache.iotdb.tsfile.write.writer.TsFileIOWriter targetWriter, int subTaskId)abstract java.util.List<org.apache.iotdb.tsfile.write.writer.TsFileIOWriter>getFileIOWriter()abstract voidstartChunkGroup(java.lang.String deviceId, boolean isAlign)voidstartMeasurement(java.util.List<org.apache.iotdb.tsfile.write.schema.IMeasurementSchema> measurementSchemaList, int subTaskId)abstract voidwrite(long timestamp, java.lang.Object value, int subTaskId)abstract voidwrite(org.apache.iotdb.tsfile.read.common.block.column.TimeColumn timestamps, org.apache.iotdb.tsfile.read.common.block.column.Column[] columns, int subTaskId, int batchSize)protected voidwriteDataPoint(java.lang.Long timestamp, java.lang.Object value, int subTaskId)protected voidwriteRateLimit(long bytesLength)
-
-
-
Method Detail
-
startChunkGroup
public abstract void startChunkGroup(java.lang.String deviceId, boolean isAlign) throws java.io.IOException- Throws:
java.io.IOException
-
endChunkGroup
public abstract void endChunkGroup() throws java.io.IOException- Throws:
java.io.IOException
-
startMeasurement
public void startMeasurement(java.util.List<org.apache.iotdb.tsfile.write.schema.IMeasurementSchema> measurementSchemaList, int subTaskId)
-
endMeasurement
public abstract void endMeasurement(int subTaskId) throws java.io.IOException- Throws:
java.io.IOException
-
write
public abstract void write(long timestamp, java.lang.Object value, int subTaskId) throws java.io.IOException- Throws:
java.io.IOException
-
write
public abstract void write(org.apache.iotdb.tsfile.read.common.block.column.TimeColumn timestamps, org.apache.iotdb.tsfile.read.common.block.column.Column[] columns, int subTaskId, int batchSize) throws java.io.IOException- Throws:
java.io.IOException
-
endFile
public abstract void endFile() throws java.io.IOException- Throws:
java.io.IOException
-
close
public abstract void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Throws:
java.io.IOException
-
writeDataPoint
protected void writeDataPoint(java.lang.Long timestamp, java.lang.Object value, int subTaskId)
-
flushChunkToFileWriter
protected void flushChunkToFileWriter(org.apache.iotdb.tsfile.write.writer.TsFileIOWriter targetWriter, int subTaskId) throws java.io.IOException- Throws:
java.io.IOException
-
checkChunkSizeAndMayOpenANewChunk
protected void checkChunkSizeAndMayOpenANewChunk(org.apache.iotdb.tsfile.write.writer.TsFileIOWriter fileWriter, int subTaskId) throws java.io.IOException- Throws:
java.io.IOException
-
checkChunkSize
protected boolean checkChunkSize(int subTaskId)
-
writeRateLimit
protected void writeRateLimit(long bytesLength)
-
getFileIOWriter
public abstract java.util.List<org.apache.iotdb.tsfile.write.writer.TsFileIOWriter> getFileIOWriter()
-
-