在 DataStudio 上读取数据之前,如何在 Google BigQuery 上操作传入的 Analytics 数据?
How can I manipulate incoming Analytics data on Google BigQuery before reading it on DataStudio?
我是 Google 基础架构的新手。我有 Google Analytics 和 Firebase Analytics 链接到 BigQuery。我需要对数据进行一些操作,然后从 DataStudio 读取转换后的数据以生成仪表板。
我想不出执行此类操作的“最佳”/行业标准方法。
这是我想出的主意:
- 根据插入日期
设置一个 table 以日为粒度的分区
- 执行以下操作之一:
- 设置每 24 小时运行一次的计划查询,从新分区读取数据,转换数据,将其复制到 table 中,并使用格式化数据
- 设置 Apps 脚本或 Cloud Function 以每天触发或基于创建新分区的事件(两者中的任何一个都可能)触发以处理数据
- 设置 DataFlow 以处理数据(在将数据放入 BigQuery 之前或之后)
我还不知道如何做这些事情,也不知道这些选择是否正确
Datastudio 允许您显示数据,而不是操作它们。一个例外,在数据源中,您可以定义自定义 SQL 查询,这样您可以在显示数据之前在查询中执行转换。
也就是说,您必须在显示数据之前准备好数据。 ELT 模式在 BigQuery 中非常流行,它意味着:运行 BigQuery 中的查询以转换数据并将它们再次存储在 BigQuery 中。
因此,您必须 运行 查询。使用计划查询、Cloud Functions + scheduler、Cloud Workflow + scheduler 或任何你想要的,都没关系(我更喜欢 Workflow)。
为了提高效率(速度和成本),当数据已经在 BigQuery 中时不要使用数据流,并且您还必须将它们下沉到 BigQuery 中。
我是 Google 基础架构的新手。我有 Google Analytics 和 Firebase Analytics 链接到 BigQuery。我需要对数据进行一些操作,然后从 DataStudio 读取转换后的数据以生成仪表板。
我想不出执行此类操作的“最佳”/行业标准方法。
这是我想出的主意:
- 根据插入日期 设置一个 table 以日为粒度的分区
- 执行以下操作之一:
- 设置每 24 小时运行一次的计划查询,从新分区读取数据,转换数据,将其复制到 table 中,并使用格式化数据
- 设置 Apps 脚本或 Cloud Function 以每天触发或基于创建新分区的事件(两者中的任何一个都可能)触发以处理数据
- 设置 DataFlow 以处理数据(在将数据放入 BigQuery 之前或之后)
我还不知道如何做这些事情,也不知道这些选择是否正确
Datastudio 允许您显示数据,而不是操作它们。一个例外,在数据源中,您可以定义自定义 SQL 查询,这样您可以在显示数据之前在查询中执行转换。
也就是说,您必须在显示数据之前准备好数据。 ELT 模式在 BigQuery 中非常流行,它意味着:运行 BigQuery 中的查询以转换数据并将它们再次存储在 BigQuery 中。
因此,您必须 运行 查询。使用计划查询、Cloud Functions + scheduler、Cloud Workflow + scheduler 或任何你想要的,都没关系(我更喜欢 Workflow)。
为了提高效率(速度和成本),当数据已经在 BigQuery 中时不要使用数据流,并且您还必须将它们下沉到 BigQuery 中。