使用 Spark Java 在 Big Query 中写入日期数据类型时出现问题

时间:2021-01-19 13:33:49

标签: google-bigquery

我正在尝试通过 Spark 在 BigQuery 中存储日期数据类型列

cast(from_unixtime(eventtime*60) as date)  as createdDate

我也尝试过如下所示的 to_date,但没有运气

to_date(from_unixtime(eventtime*60))  as createdDate

现在我正在尝试使用 Spark-BigQuery 连接器保存这个数据集,它给我一个错误,即字段 createdDate 已将类型从 DATE 更改为 INTEGER。但是当我尝试在 spark 中打印模式时,正确地说列数据类型是日期。

 |-- createdDate: date (nullable = false)

不确定为什么在将数据加载到 BigQuery 时失败。 如果我将数据类型从日期更改为时间戳,同样的事情也会起作用。请指教。

1 个答案:

答案 0 :(得分:0)

决议是使用intermediateFormat作为Orc。使用中间格式作为 Avro 它不起作用,我们不能使用镶木地板(默认)格式,因为我们的表中有数组数据类型,其中 Big Query 创建中间格式,如解释here。 Save Array<T> in BigQuery using Java

相关问题