Firebase 导出到 BigQuery 事件时间戳时区
Posted
技术标签:
【中文标题】Firebase 导出到 BigQuery 事件时间戳时区【英文标题】:Firebase export to BigQuery event timestamp timezone 【发布时间】:2019-05-15 07:53:26 【问题描述】:我有一个链接到 BigQuery 以发送事件数据的 Firebase。 它以旧的分区方式创建表,其中日期是表名的一部分。
Firebase 会创建一个包含 event_timestamp
和 event_date
的架构。
当我查看特定日期的分区时,event_date
与分区具有相同的日期,但最小时间戳从前一个日期的晚上 9 点开始,在分区日期的晚上 9 点之前结束。
在Firebase schema 的文档中写道event_timestamp
是“事件在客户端上记录的时间(以微秒为单位,UTC)。”
那么event_timestamp
、event_date
的时区和 Firebase 架构的分区日期究竟是什么?
event_timestamp
是不是用当地时间写的?
【问题讨论】:
“事件在客户端上记录的时间(以微秒为单位,UTC)。”...因此时区必须是 UTC。此外,它似乎是一个纪元时间,根据定义应该是 UTC。 【参考方案1】:据我从文档中了解到,event_date
和表名遵循您的 firebase 项目配置的时区; event_timestamp
遵循 UTC。
当我查看特定日期的分区时,event_date 与分区的日期相同,但最小时间戳从前一个日期的晚上 9 点开始,在分区日期的晚上 9 点之前结束。
如果你使用TIMESTAMP_MICROS()查询表
TIMESTAMP_MICROS(event_timestamp) as datetime_utc
返回将包含时区信息
2021-05-05 14:26:37.704002+00:00
因此,如果您需要使用本地时间,而不是使用时间戳,将其转换为项目的同一时区,您应该没问题。
【讨论】:
以上是关于Firebase 导出到 BigQuery 事件时间戳时区的主要内容,如果未能解决你的问题,请参考以下文章
如何将所有事件数据从 Firebase 导出到 BigQuery?
如何从 BigQuery 中的 Firebase 事件中获取用户表?