为啥 BigQuery 将 Firebase user_property 转换为 int?

Posted

技术标签:

【中文标题】为啥 BigQuery 将 Firebase user_property 转换为 int?【英文标题】:Why is BigQuery converting a Firebase user_property to an int?为什么 BigQuery 将 Firebase user_property 转换为 int? 【发布时间】:2020-07-02 16:12:52 【问题描述】:

我们有移动(iosandroid)和网络平台将事件流式传输到 Firebase,然后将其导出到 BigQuery。但是,BigQuery 处理 user_properties 的方式在移动平台和网络平台之间是不同的。我了解在 Firebase 中,所有用户属性都是字符串。在移动平台中,特定的 user_property 显示为字符串,而在 Web 平台上,它被转换为整数(user_property.value.string_value vs user_property.value.int_value)。我是否配置了一些东西来阻止 BigQuery 在这里推断类型?我是否误解了 BigQuery 如何导入 user_properties?

BigQuery 是否也会对 event_params 执行类似的推理?

谢谢!

【问题讨论】:

你看过这个页面了吗? support.google.com/firebase/answer/6318765 @rmesteves 该页面的哪一部分?我看过那个页面,并且确实链接了项目 这更多的是关于您删除的问题。但似乎架构无法更改:support.google.com/firebase/answer/7029846?hl=en @rmesteves 我对您的答案试图解决的问题感到困惑;抱歉将其移至其他页面。我仍然不确定这是否能解决我的盘中表问题,但仍然感谢。 另外,架构是一致的。问题是根据上传的数据和(更重要的是)平台来填充不同的结构字段值(字符串一与整数一) 【参考方案1】:

根据document,BigQuery 导出就像即插即用解决方案一样工作,并且表是在 BigQuery 中自动创建的。

鉴于此,您无法控制要导出哪些列或如何表示导出表中的数据。如果您需要在上述字段中转换数据类型,我建议您在表格和最终查询之间使用视图

【讨论】:

以上是关于为啥 BigQuery 将 Firebase user_property 转换为 int?的主要内容,如果未能解决你的问题,请参考以下文章

将数据从 firebase 导出到 bigQuery?

如何将以前的 Firebase Analytics 导出到 Bigquery [重复]

如何将以前的Firebase Analytics导出到Bigquery [重复]

如何将过去几天的数据从 Firebase 重新加载到 BigQuery?

为啥需要在 BigQuery 中设置“asia-northeast1”的处理位置?

如何将应用程序的旧分析数据从 firebase 获取到 bigquery?