【发布时间】:2017-05-21 10:28:26
【问题描述】:
Firebase 通过 Firebase 远程配置提供拆分测试功能,但无法过滤具有用户属性(实际上具有任何属性)的同类群组部分中的保留。
为了解决这个问题,我正在寻找 BigQuery,因为 Firebase Analytics 提供了将数据导出到该服务的可用方法。
但我遇到了很多问题,谷歌没有答案或示例可以为我指明正确的方向。
一般问题:
作为第一步,我需要汇总代表相同数据 Firebase 同类群组的数据,因此我可以确定我的计算是正确的:
下一步应该只是对查询应用约束,以便它们匹配自定义用户属性。
到目前为止我得到了什么:
主要问题 - 用户计算的巨大差异。有时大约有 100 个用户,但有时接近 1000 个。
这是我使用的方法:
# 1
# Count users with `user_dim.first_open_timestamp_micros`
# in specified period (w0 – week 1)
# this is the way firebase group users to cohorts
# (who started app on the same day or during the same week)
# https://support.google.com/firebase/answer/6317510
SELECT
COUNT(DISTINCT user_dim.app_info.app_instance_id) as count
FROM
(
TABLE_DATE_RANGE
(
[admob-app-id-xx:xx_IOS.app_events_],
TIMESTAMP('2016-11-20'),
TIMESTAMP('2016-11-26')
)
)
WHERE
STRFTIME_UTC_USEC(user_dim.first_open_timestamp_micros, '%Y-%m-%d')
BETWEEN '2016-11-20' AND '2016-11-26'
# 2
# For each next period count events with
# same first_open_timestamp
# Here is example for one of the weeks.
# week 0 is Nov20-Nov26, week 1 is Nov27-Dec03
SELECT
COUNT(DISTINCT user_dim.app_info.app_instance_id) as count
FROM
(
TABLE_DATE_RANGE
(
[admob-app-id-xx:xx_IOS.app_events_],
TIMESTAMP('2016-11-27'),
TIMESTAMP('2016-12-03')
)
)
WHERE
STRFTIME_UTC_USEC(user_dim.first_open_timestamp_micros, '%Y-%m-%d')
BETWEEN '2016-11-20' AND '2016-11-26'
# 3
# Now we have users for each week w1, w2, ... w5
# Calculate retention for each of them
# retention week 1 = w1 / w0 * 100 = 25.72181359
# rw2 = w2 / w1 * 100
# ...
# rw5 = w5 / w1 * 100
# 4
# Shift week 0 by one and repeat from step 1
BigQuery 查询提示请求
非常感谢任何有关构建复杂查询的提示和指导,这些查询可以一步聚合和计算此任务所需的所有数据。
Here is BigQuery Export schema if needed
附带问题:
- 为什么
user_dim.device_info.device_id和user_dim.device_info.resettable_device_id都是null? -
文档中缺少
user_dim.app_info.app_id(如果 Firebase 支持团队成员将阅读此问题) -
event_dim.timestamp_micros和event_dim.previous_timestamp_micros应该如何使用,我无法理解它们的用途。
附言
Firebase 队友中的某个人回答这个问题会很好。 Five month ago there are was one mention 关于通过过滤扩展群组功能或显示大查询示例,但事情并没有进展。他们说,Firebase Analytics 是可行的方法,Google Analytics 已被弃用,他们说。 现在我花了第二天的时间来学习 bigquery,并在现有的分析工具上构建我自己的解决方案。我不,堆栈溢出不是这个 cmets 的地方,但是你们在想吗?拆分测试可能会在语法上影响我的应用程序的保留。我的应用没有卖出任何东西,漏斗和事件在很多情况下都不是有价值的指标。
【问题讨论】:
-
关于您的
BigQuery queries tips request- 您是否只需要特定于 Firebase 的版本?或者只是通用的 bigquery 会为您工作,以便您可以将其应用于特定的 firebase 架构? -
@Mikhail Berlyant 是的,generuc bigquery 可以正常工作
标签: firebase google-bigquery firebase-analytics