public class ISOSecondsBetween extends EvalFunc<Long>
ISOSecondsBetween returns the number of seconds between two ISO8601 datetimes as a Long
Example usage:
REGISTER /Users/me/commiter/piggybank/java/piggybank.jar ;
REGISTER /Users/me/commiter/piggybank/java/lib/joda-time-1.6.jar ;
DEFINE ISOYearsBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISOYearsBetween();
DEFINE ISOMonthsBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISOMonthsBetween();
DEFINE ISODaysBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISODaysBetween();
DEFINE ISOHoursBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISOHoursBetween();
DEFINE ISOMinutesBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISOMinutesBetween();
DEFINE ISOSecondsBetween org.apache.pig.piggybank.evaluation.datetime.diff.ISOSecondsBetween();
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)
...
diffs = FOREACH ISOin GENERATE ISOYearsBetween(dt, dt2) AS years,
ISOMonthsBetween(dt, dt2) AS months,
ISODaysBetween(dt, dt2) AS days,
ISOHoursBetween(dt, dt2) AS hours,
ISOMinutesBetween(dt, dt2) AS mins,
ISOSecondsBetween(dt, dt2) AS secs;
DESCRIBE diffs;
diffs: {years: long,months: long,days: long,hours: long,mins: long,secs: long}
DUMP diffs;
(0L,11L,341,8185L,491107L,29466421L)
(0L,0L,5,122L,7326L,439562L)
(0L,-10L,-332,-7988L,-479334L,-28760097L)
EvalFunc.SchemaTypelog, pigLogger, reporter, returnType| Constructor and Description |
|---|
ISOSecondsBetween() |
| Modifier and Type | Method and Description |
|---|---|
Long |
exec(Tuple input)
This callback method must be implemented by all subclasses.
|
List<FuncSpec> |
getArgToFuncMapping()
Allow a UDF to specify type specific implementations of itself.
|
Schema |
outputSchema(Schema input)
Report the schema of the output of this UDF.
|
allowCompileTimeCalculation, finish, getCacheFiles, getInputSchema, getLoadCaster, getLogger, getPigLogger, getReporter, getReturnType, getSchemaName, getSchemaType, getShipFiles, isAsynchronous, needEndOfAllInputProcessing, progress, setEndOfAllInput, setInputSchema, setPigLogger, setReporter, setUDFContextSignature, warnpublic Long exec(Tuple input) throws IOException
EvalFuncexec in class EvalFunc<Long>input - the Tuple to be processed.IOExceptionpublic Schema outputSchema(Schema input)
EvalFunc
The default implementation interprets the OutputSchema annotation,
if one is present. Otherwise, it returns null (no known output schema).
outputSchema in class EvalFunc<Long>input - Schema of the inputpublic List<FuncSpec> getArgToFuncMapping() throws FrontendException
EvalFuncgetArgToFuncMapping in class EvalFunc<Long>FrontendExceptionCopyright © 2007-2017 The Apache Software Foundation