Iam che cerca di convertire il formato dell'ora ISO in aaaa-mm-gg hh: mm: ss.SSS. Tuttavia non sono in grado di ottenere la conversione. Sono nuovo per maiale e sto cercando di scrivere un udf per gestire la conversione dal formato ISO a aaaa-mm-gg hh: mm: ss.SSS.Pig UDF per iso a aaaa-mm-gg hh: mm: ss.000
Gentilmente mi guida Ho provato le funzioni di maiale (FORMAT, DATE_FORMAT) ma non è stato in grado di convertire i dati nel formato richiesto.
formato dati corrente: 2013-08-22T13: 23: 18,226,22 mila + 01: 00 formato
dati richiesto: 2013/08/22 13: 23: 18,226
import java.io.IOException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.pig.EvalFunc;
import org.apache.pig.data.Tuple;
import org.apache.pig.EvalFunc;
import org.joda.time.DateTime;
import org.joda.time.format.*;
import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.DateTimeFormatterBuilder;
public class test extends EvalFunc<String>{
public String exec(Tuple input) throws IOException {
if ((input == null) || (input.size() == 0))
return null;
try{
String time = (String)input.get(0);
DateFormat dt = new SimpleDateFormat ("yyyy-mm-dd hh:mm:ss.SSS");
Date d_t = dt.parse(time);
String timedt = getTimedt(d_t);
return timedt;
} catch (ParseException e) {
return null;
}
}
private String getTimedt(Date d_t) {
DateTimeFormatterBuilder formatter = new DateTimeFormatterBuilder();
}
}
Come posso gestire le conversioni di date nel maiale?
È un UDF necessario per svolgere questo compito? Sono attualmente di fronte a questo problema me stesso. Ho visto parlare di UDF di PiggyBank che potrebbero portare a termine questo, ma forse quelli non sono più necessari in 0.11? – Freerobots