在SQL server中导入和解析GA4 BigQuery事件数据的推荐方法



我们使用Python连接到BigQuery来下载每日事件_YYYYMMDD.csv文件。这些文件包含一个逗号分隔的列列表,其中一些列包含.json数据(其中一些还包含嵌入式.json)。

这些日常文件中的每一个都包含大约100万条记录。

使用Google GA4事件模式,我们正在SQL server中构建与GA4相关的表。

  • 事件
  • 用户
  • 设备
  • geo
  • app_info
  • 流量来源
  • 溪流和平台
  • 电子商务
  • 项目

在SQL server中将.csv文件(可以包含多个级别的嵌入式.json)解析为适当的表(上面列出)时,建议采用什么方法?

我们开始创建一个SSIS包,将.csv文件导入临时表,然后创建一个解析行的脚本。然而,在这样做的时候,我们意识到我们需要创建一个非常复杂的查询,其中包含多个交叉应用语句,并且关心性能。

最佳实践是在导出BQ GA4导出之前将其压平。您可以在网上找到各种方法来压平它,但主要思想是在事件属性/自定义维度列中去掉json。典型的解决方案是为每个ep/cd制作一个不同的列。

在这之后,人们通常只是将数据按原样移动到他们喜欢的数据存储中。ETL在这一点上的任何突变都将是特定于公司的。通常情况下,ETL逻辑会随着时间的推移而变得臃肿,总是旨在改进数据。

最新更新