未在beamSql中解析日期

时间:2018-03-17 17:21:15

标签: apache-beam

我有以下错误:

SEVERE: 2018-03-17T17:15:42.272Z: java.lang.IllegalArgumentException: Unable to encode element 'BeamRecord [dataValues=[2/12/2017], dataType=BeamRecordSqlType [fieldNames=[c0], fieldTypes=[12]]]' with coder 'org.apache.beam.sdk.coders.BeamRecordCoder@56ce2595'.

我已将 dataValues = [2/12/2017] 指定为TIMESTAMP数据类型。 link

有什么想法在这里出错吗?

1 个答案:

答案 0 :(得分:1)

您可能在TIMESTAMP字段中使用了错误的类型。 BeamRecord期望java.util.Date字段中的TIMESTAMP类型值。

例如,如果您的输入来自JSON,则可能需要使用java.text.DateFormat解析时间戳字段,请参阅示例here

如果您在查询中指定TIMESTAMP,请尝试以此格式指定时间戳:TIMESTAMP '1999-02-22 01:01:58'。请参阅示例here