org.apache.pig.builtin
Class FloatAvg

java.lang.Object
  extended by org.apache.pig.EvalFunc<Double>
      extended by org.apache.pig.builtin.FloatAvg
All Implemented Interfaces:
Algebraic

public class FloatAvg
extends EvalFunc<Double>
implements Algebraic

Generates the average of the values of the first field of a tuple. This class is Algebraic in implementation, so if possible the execution will be split into a local and global application


Nested Class Summary
static class FloatAvg.Final
           
static class FloatAvg.Initial
           
static class FloatAvg.Intermediate
           
 
Field Summary
 
Fields inherited from class org.apache.pig.EvalFunc
log, pigLogger, reporter, returnType
 
Constructor Summary
FloatAvg()
           
 
Method Summary
protected static Tuple combine(DataBag values)
           
protected static long count(Tuple input)
           
 Double exec(Tuple input)
          This callback method must be implemented by all subclasses.
 String getFinal()
           
 String getInitial()
           
 String getIntermed()
           
 Schema outputSchema(Schema input)
           
protected static Double sum(Tuple input)
           
 
Methods inherited from class org.apache.pig.EvalFunc
finish, getArgToFuncMapping, getLogger, getPigLogger, getReporter, getReturnType, getSchemaName, isAsynchronous, progress, setPigLogger, setReporter, warn
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FloatAvg

public FloatAvg()
Method Detail

exec

public Double exec(Tuple input)
            throws IOException
Description copied from class: EvalFunc
This callback method must be implemented by all subclasses. This is the method that will be invoked on every Tuple of a given dataset. Since the dataset may be divided up in a variety of ways the programmer should not make assumptions about state that is maintained between invocations of this method.

Specified by:
exec in class EvalFunc<Double>
Parameters:
input - the Tuple to be processed.
Returns:
result, of type T.
Throws:
IOException

getInitial

public String getInitial()
Specified by:
getInitial in interface Algebraic
Returns:
A string to instatiate f_init. f_init should be an eval func

getIntermed

public String getIntermed()
Specified by:
getIntermed in interface Algebraic
Returns:
A string to instantiate f_intermed. f_intermed should be an eval func

getFinal

public String getFinal()
Specified by:
getFinal in interface Algebraic
Returns:
A string to instantiate f_final. f_final should be an eval func parametrized by the same datum as the eval func implementing this interface

combine

protected static Tuple combine(DataBag values)
                        throws ExecException
Throws:
ExecException

count

protected static long count(Tuple input)
                     throws ExecException
Throws:
ExecException

sum

protected static Double sum(Tuple input)
                     throws ExecException,
                            IOException
Throws:
ExecException
IOException

outputSchema

public Schema outputSchema(Schema input)
Overrides:
outputSchema in class EvalFunc<Double>
Parameters:
input - Schema of the input
Returns:
Schema of the output


Copyright © ${year} The Apache Software Foundation