2014-02-26 3 views
5

Ich bin eine tsv-Datei mit einer Datetime-Spalte und langer Spalte mit dem Laden:richtig Datetime in Molcheinsetz-

A = LOAD 'tweets-clean.txt' USING PigStorage('\t') AS (date:datetime, userid:long); 
DUMP A; 

Ein Beispiel Eingabezeile:

Tue Feb 11 05:02:10 +0000 2014 205291417 

dieser Zeile der Ausgabe:

, 205291417 

Wie mache ich das richtig?

Antwort

11

Sie möchten das Datum als Chararray laden (Datum: Chararray) und können es dann in ein Datetime mit FOREACH GENERATE zusammen mit der ToDate Pig integrierten Funktion umwandeln.

Der Formatstring wird auf der Bitte fragen SimpleDateFormat

A = LOAD 'tweets-clean.txt' USING PigStorage('\t') AS (date:chararray, userid:long); 
B = FOREACH A GENERATE ToDate(date, '<some format string>') AS date, userid; 
DUMP B; 
+0

@kskp basiert, indem Sie auf die [Frage stellen] (// stackoverflow.com/questions/ask) drücken. Kommentare dienen zur Verdeutlichung der vorhandenen Antwort –

+0

Entschuldigung. Werde es tun. – kskp