Bigquery
本指南描述了Mixpanel如何将您的数据导出到一个Google BigQuery数据集。
设计
当前有两种将Mixpanel数据导出到大的方法。
- 导出到客户托管BigQuery(推荐)
- 导出到Mixpanel管理BigQuery
作为导出管道的一部分,一个新的数据集mixpanel_nessie_day_partitioned_
如果客户选择导出到Mixpanel托管BigQuery或应在客户管理的BigQuery的适当权限中创建数据集并为我们提供一个名称,则将创建。我们也申请转型规则使数据与数据仓库兼容。
对于用户配置文件和身份映射表,我们每次创建一个带有随机后缀的新表格,然后将更新mp_people
和MP_IDDENTITY_MAPPINGS
相应地使用最新表格。您应该始终使用视图,并应避免使用实际表,因为我们不会立即删除旧表,并且您可能会使用旧表。
分区
表中的数据根据_分区时间
伪列并在项目区域中。
查询
您可以使用单个表模式查询数据,也可以使用BigQuery中的多个表格架构查询数据。要获取有关表格模式的更多信息,请参阅模式。
要查询单个表模式,请使用此片段。
从mixpanel_nessie_day_partitioned_ 中选择计数(*).mp_master_event where mp_event_name =“ ”
要查询多个表模式,请使用此片段。
从mixpanel_nessie_day_partitioned_ 中选择计数(*)
cleaned_event_name
是基于转换的事件名称转型规则。
每天获得活动数量
如果您怀疑导出过程没有导出所需的所有事件,则需要此。由于表是使用的分区_分区时间
伪列在Project TimeZone中,您可以使用查询以轻松快速地每天获取事件数量:
选择_ partitionTime作为pt,从`mixpanel_nessie_day_partitioned_ count(*)count(*).mp_master_event`其中date(_partitionTime)<=“ 2021-12-03” and Date(_partitionTime)>(_partitionTime)>
此示例将返回项目时区中每天的事件数量,以进行单检查管道和示例。您可以通过将正确的表名称放在查询中调整MultiSchema的查询。
查询身份映射表
使用ID映射表时,您应该使用解决独特的_id
代替未解决的独特的_id
每当在场。如果没有解决独特的_id
,然后可以使用独特的_id
从现有的人或事件表中。
以下是一个示例SQL查询,该查询将ID映射表引用到旧金山每个唯一用户的特定日期范围内的事件数量:
SELECT CASE WHEN m.resolved_distinct_id IS NOT NULL THEN m.resolved_distinct_id WHEN m.resolved_distinct_id IS NULL THEN e.distinct_id END as resolved_distinct_id, COUNT(*) AS count FROM mixpanel_nessie_day_partitioned_.mp_master_event e FULL OUTER JOIN mixpanel_nessie_day_partitioned_.mp_identity_mappings_data_viewm on e.distinct_id = m.distinct_id and mp_city =“ san Francisco”和date(e.__partitiontime)<=“ 2021-12-03”和date(e.__partitionTime)> =“ 2021-12-01”组。resolved_distinct_id限制100
通过在事件属性上添加更多过滤器,还可以计算用户完成特定行为的次数。您可以通过将正确的表名称放在查询中调整MultiSchema的查询。
导出到客户托管BigQuery(推荐)
我们建议将MixPanel数据导出到客户管理的BigQuery中,因为客户需要遵循这些步骤。
- 在他们的bigquery中创建一个数据集
- 给Mixpanel提供必要的权限,以导出到该数据集中。
我们需要两个权限来管理数据集。
BigQuery Job用户
- 去IAM&Admin在您的Google云控制台中。
- 点击+添加添加校长
- 添加新原则”[电子邮件保护]“并将角色设置为“ BigQuery Job用户”,并保存。
BigQuery数据所有者
- 去Bigquery在您的Google云控制台中。
- 打开您想要MixPanel导出到的数据集。
- 点击分享和权限在下拉。
- 在“数据权限”窗口中单击添加本金
- 添加新原则”[电子邮件保护]“并将角色设置为“ BigQuery数据所有者”,并保存。
- 您需要将此数据集和GCP项目ID作为参数传递创建您的管道
导出到Mixpanel管理BigQuery
这不再是推荐的方法。但是,如果您选择导出到Mixpanel管理BigQuery,则必须提供Google组的电子邮件地址才能使用BigQuery导出。创建您的管道。Mixpanel导出以指定的间隔将数据转换为BigQuery。
MixPanel在其自己的BigQuery实例中创建一个数据集,并在创建管道时提供了对提供的帐户的“视图”访问。结果,与将数据导出到BigQuery没有相关的存储成本,但是在查询此数据时将发生标准计算成本。
如果您选择将数据集复制到自己的bigquery实例中,则还将开始从BigQuery获得存储成本
更新 8个月前