package brickhouse.udf.collect;
import brickhouse.udf.collect.CollectMaxUDAF.MapCollectMaxUDAFEvaluator;
import org.apache.hadoop.hive.ql.exec.Description;
import org.apache.hadoop.hive.ql.parse.SemanticException;
import org.apache.hadoop.hive.ql.udf.generic.AbstractGenericUDAFResolver;
import org.apache.hadoop.hive.ql.udf.generic.GenericUDAFEvaluator;
import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
@Description(name = "collect_min",
value = "_FUNC_(x, val, n) - Returns an map of the N min numeric values in the aggregation group "
)
public class CollectMinUDAF extends AbstractGenericUDAFResolver {
@Override
public GenericUDAFEvaluator getEvaluator(TypeInfo[] parameters)
throws SemanticException {
return new MapCollectMinUDAFEvaluator();
}
public static class MapCollectMinUDAFEvaluator extends MapCollectMaxUDAFEvaluator {
public MapCollectMinUDAFEvaluator() {
super(false);
}
}
}