gpt4 book ai didi

hadoop - PIG - 将输入日期转换为 UTC 时区

转载 作者:可可西里 更新时间:2023-11-01 16:47:56 26 4
gpt4 key购买 nike

我有一个 PST 格式的日期输入文件

example => 2014-02-04 05:46:36.0

我需要使用 pig 语法将此日期转换为 UTC。我尝试使用 ToDate(input_date_column,'yyyy-MM-dd HH:mm:ss.SS','UTC') 但它不起作用。

Error shown - java.lang.IllegalArgumentException: Invalid format: ""2014-02-04 05:46:36.0""

感谢任何帮助:)

最佳答案

我真的找不到这个的构建方法

所以我写了一个用户定义的函数并将它用到我的 pig 脚本中

它是这样的-

public class convertToUTC extends EvalFunc<String> {
@Override
public String exec(final Tuple input) throws IOException {
if (input == null || input.size() == 0) {
return null;
}
try {
String date = input.get(0).toString();
Timestamp timestamp = Timestamp.valueOf(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(timestamp);
calendar.add(Calendar.HOUR, 8);
Timestamp UTCTimestamp = new Timestamp(calendar.getTime().getTime());
return UTCTimestamp.toString();
}
catch (Exception e) {
throw WrappedIOException.wrap("Caught exception processing input row ", e);
}
}
}

关于hadoop - PIG - 将输入日期转换为 UTC 时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35284005/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com