Class UDTFSelectK
- java.lang.Object
-
- org.apache.iotdb.commons.udf.builtin.UDTFSelectK
-
- All Implemented Interfaces:
org.apache.iotdb.udf.api.UDF,org.apache.iotdb.udf.api.UDTF
- Direct Known Subclasses:
UDTFBottomK,UDTFTopK
public abstract class UDTFSelectK extends java.lang.Object implements org.apache.iotdb.udf.api.UDTF
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.iotdb.tsfile.file.metadata.enums.TSDataTypedataTypeprotected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Double>>doublePQprotected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Float>>floatPQprotected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Integer>>intPQprotected intkprotected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Long>>longPQprotected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.String>>stringPQ
-
Constructor Summary
Constructors Constructor Description UDTFSelectK()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidbeforeStart(org.apache.iotdb.udf.api.customizer.parameter.UDFParameters parameters, org.apache.iotdb.udf.api.customizer.config.UDTFConfigurations configurations)protected abstract voidconstructPQ()voidterminate(org.apache.iotdb.udf.api.collector.PointCollector collector)voidtransform(org.apache.iotdb.udf.api.access.Row row, org.apache.iotdb.udf.api.collector.PointCollector collector)protected abstract voidtransformDouble(long time, double value)protected abstract voidtransformFloat(long time, float value)protected abstract voidtransformInt(long time, int value)protected abstract voidtransformLong(long time, long value)protected abstract voidtransformString(long time, java.lang.String value)voidvalidate(org.apache.iotdb.udf.api.customizer.parameter.UDFParameterValidator validator)
-
-
-
Field Detail
-
k
protected int k
-
dataType
protected org.apache.iotdb.tsfile.file.metadata.enums.TSDataType dataType
-
intPQ
protected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Integer>> intPQ
-
longPQ
protected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Long>> longPQ
-
floatPQ
protected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Float>> floatPQ
-
doublePQ
protected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.Double>> doublePQ
-
stringPQ
protected java.util.PriorityQueue<org.apache.iotdb.tsfile.utils.Pair<java.lang.Long,java.lang.String>> stringPQ
-
-
Method Detail
-
validate
public void validate(org.apache.iotdb.udf.api.customizer.parameter.UDFParameterValidator validator) throws org.apache.iotdb.udf.api.exception.UDFException- Specified by:
validatein interfaceorg.apache.iotdb.udf.api.UDF- Throws:
org.apache.iotdb.udf.api.exception.UDFException
-
beforeStart
public void beforeStart(org.apache.iotdb.udf.api.customizer.parameter.UDFParameters parameters, org.apache.iotdb.udf.api.customizer.config.UDTFConfigurations configurations) throws MetadataException, org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException- Specified by:
beforeStartin interfaceorg.apache.iotdb.udf.api.UDTF- Throws:
MetadataExceptionorg.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException
-
constructPQ
protected abstract void constructPQ() throws org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException- Throws:
org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException
-
transform
public void transform(org.apache.iotdb.udf.api.access.Row row, org.apache.iotdb.udf.api.collector.PointCollector collector) throws org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException, java.io.IOException- Specified by:
transformin interfaceorg.apache.iotdb.udf.api.UDTF- Throws:
org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidExceptionjava.io.IOException
-
transformInt
protected abstract void transformInt(long time, int value)
-
transformLong
protected abstract void transformLong(long time, long value)
-
transformFloat
protected abstract void transformFloat(long time, float value)
-
transformDouble
protected abstract void transformDouble(long time, double value)
-
transformString
protected abstract void transformString(long time, java.lang.String value)
-
terminate
public void terminate(org.apache.iotdb.udf.api.collector.PointCollector collector) throws org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidException, java.io.IOException- Specified by:
terminatein interfaceorg.apache.iotdb.udf.api.UDTF- Throws:
org.apache.iotdb.udf.api.exception.UDFInputSeriesDataTypeNotValidExceptionjava.io.IOException
-
-