org.apache.pig.piggybank.evaluation.datetime.truncate
Class ISOToMinute

java.lang.Object
  extended by org.apache.pig.EvalFunc<String>
      extended by org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToMinute

public class ISOToMinute
extends EvalFunc<String>

ISOToMinute truncates an ISO8601 datetime string to the precision of the minute field Jodatime: http://joda-time.sourceforge.net/ ISO8601 Date Format: http://en.wikipedia.org/wiki/ISO_8601 Example usage: REGISTER /Users/me/commiter/piggybank/java/piggybank.jar ; REGISTER /Users/me/commiter/piggybank/java/lib/joda-time-1.6.jar ; DEFINE ISOToYear org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToYear(); DEFINE ISOToMonth org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToMonth(); DEFINE ISOToWeek org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToWeek(); DEFINE ISOToDay org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToDay(); DEFINE ISOToHour org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToHour(); DEFINE ISOToMinute org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToMinute(); DEFINE ISOToSecond org.apache.pig.piggybank.evaluation.datetime.truncate.ISOToSecond(); ISOin = LOAD 'test.tsv' USING PigStorage('\t') AS (dt:chararray, dt2:chararray); DESCRIBE ISOin; ISOin: {dt: chararray,dt2: chararray} DUMP ISOin; (2009-01-07T01:07:01.000Z,2008-02-01T00:00:00.000Z) (2008-02-06T02:06:02.000Z,2008-02-01T00:00:00.000Z) (2007-03-05T03:05:03.000Z,2008-02-01T00:00:00.000Z) ... truncated = FOREACH ISOin GENERATE ISOToYear(dt) AS year, ISOToMonth(dt) as month, ISOToWeek(dt) as week, ISOToDay(dt) AS day, ISOToHour(dt) AS hour, ISOToMinute(dt) AS min, ISOToSecond(dt) as sec; DESCRIBE truncated; truncated: {year: chararray,month: chararray,week: chararray,day: chararray,hour: chararray,min: chararray,sec: chararray} DUMP truncated; (2009-01-01T00:00:00.000Z,2009-01-01T00:00:00.000Z,2009-01-05T00:00:00.000Z,2009-01-07T00:00:00.000Z,2009-01-07T01:00:00.000Z,2009-01-07T01:07:00.000Z,2009-01-07T01:07:01.000Z) (2008-01-01T00:00:00.000Z,2008-02-01T00:00:00.000Z,2008-02-04T00:00:00.000Z,2008-02-06T00:00:00.000Z,2008-02-06T02:00:00.000Z,2008-02-06T02:06:00.000Z,2008-02-06T02:06:02.000Z) (2007-01-01T00:00:00.000Z,2007-03-01T00:00:00.000Z,2007-03-05T00:00:00.000Z,2007-03-05T00:00:00.000Z,2007-03-05T03:00:00.000Z,2007-03-05T03:05:00.000Z,2007-03-05T03:05:03.000Z)


Field Summary
 
Fields inherited from class org.apache.pig.EvalFunc
log, pigLogger, reporter, returnType
 
Constructor Summary
ISOToMinute()
           
 
Method Summary
 String exec(Tuple input)
          This callback method must be implemented by all subclasses.
 List<FuncSpec> getArgToFuncMapping()
           
 Schema outputSchema(Schema input)
           
 
Methods inherited from class org.apache.pig.EvalFunc
finish, 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

ISOToMinute

public ISOToMinute()
Method Detail

exec

public String 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<String>
Parameters:
input - the Tuple to be processed.
Returns:
result, of type T.
Throws:
IOException

outputSchema

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

getArgToFuncMapping

public List<FuncSpec> getArgToFuncMapping()
                                   throws FrontendException
Overrides:
getArgToFuncMapping in class EvalFunc<String>
Returns:
A List containing FuncSpec objects representing the Function class which can handle the inputs corresponding to the schema in the objects
Throws:
FrontendException


Copyright © ${year} The Apache Software Foundation