void setup(GenericUDAFEvaluator genericUDAF) { if (needConfigure(genericUDAF)) { genericUDAF.configure(this); } if (needClose(genericUDAF)) { registerCloseable(genericUDAF); } }
void setup(GenericUDAFEvaluator genericUDAF) { if (needConfigure(genericUDAF)) { genericUDAF.configure(this); } if (needClose(genericUDAF)) { registerCloseable(genericUDAF); } }
void setup(GenericUDAFEvaluator genericUDAF) { if (needConfigure(genericUDAF)) { genericUDAF.configure(this); } if (needClose(genericUDAF)) { registerCloseable(genericUDAF); } }
@Override public Object exec(Tuple input) throws IOException { try { if (!inited) { schemaAndEvaluatorInfo.init(getInputSchema(), instantiateUDAF(funcName), Mode.FINAL, constantsInfo); schemaAndEvaluatorInfo.evaluator.configure(instantiateMapredContext()); inited = true; } DataBag b = (DataBag)input.get(0); AggregationBuffer agg = schemaAndEvaluatorInfo.evaluator.getNewAggregationBuffer(); for (Iterator<Tuple> it = b.iterator(); it.hasNext();) { Tuple t = it.next(); schemaAndEvaluatorInfo.evaluator.merge(agg, t.get(0)); } Object returnValue = schemaAndEvaluatorInfo.evaluator.terminate(agg); Object result = HiveUtils.convertHiveToPig(returnValue, schemaAndEvaluatorInfo.outputObjectInspector, null); return result; } catch (Exception e) { throw new IOException(e); } } }