从 Avro 导入一个以秒为单位的 unix 时间戳到 Bigquery 中的正确时间戳
Import a unix timestamp in seconds from Avro to the right timestamp in Bigquery
我想将以 AVRO 格式存储的数据从 GCS 导入 Bigquery。
源时间戳为 Unix 格式,精度为秒(例如:1572534049),但 BQ 要求它为毫秒或微秒精度,以使用逻辑类型并将其转换为正确的时间戳(我当前在 1970-XX-XX 而不是 2021-XX-XX 中获取值。
我知道我的问题类似于以下线程:
但是,我无法将 AVRO 文件中的列乘以 1000,因为它们是从其他地方检索然后定期存储的。看来我也无法在 table 架构定义中添加 *1000。
如果没有直接的方法,我将简单地在中间 table 中导入具有 unix 时间戳作为整数的 AVRO,然后通过查询输出另一个具有预期列的 table , 但这不是最方便的。
编辑:添加示例
我想将以 AVRO 格式存储的数据从 GCS 导入 Bigquery。
源时间戳为 Unix 格式,精度为秒(例如:1572534049),但 BQ 要求它为毫秒或微秒精度,以使用逻辑类型并将其转换为正确的时间戳(我当前在 1970-XX-XX 而不是 2021-XX-XX 中获取值。
我知道我的问题类似于以下线程:
但是,我无法将 AVRO 文件中的列乘以 1000,因为它们是从其他地方检索然后定期存储的。看来我也无法在 table 架构定义中添加 *1000。
如果没有直接的方法,我将简单地在中间 table 中导入具有 unix 时间戳作为整数的 AVRO,然后通过查询输出另一个具有预期列的 table , 但这不是最方便的。
编辑:添加示例