gpt4 book ai didi

google-bigquery - 如何有效地判断 ga_sessions_intraday_ 中有可用的新数据

转载 作者:行者123 更新时间:2023-12-04 14:36:03 25 4
gpt4 key购买 nike

根据 the docs,Google Analytics 数据应该每天 3 次导出到 Big Query .我试图确定一种有效的方法来检测 ga_sessions_intraday_ 表中可用的新数据,并在 BQ 中运行查询以提取新数据。

我最好的想法是通过每小时运行一次 SQL 查询来轮询 ga_sessions_intraday_。我会跟踪最大 visitStartTime(将状态存储在某处),如果新的最大 visitStartTime 出现在 ga_sessions_intraday_ 中,那么我将运行我的完整查询。

这种方法的问题是我需要存储关于最大 visitStartTime 的状态。我更喜欢更简单的东西。

GA Big Query 是否有更好的方法来告知 ga_sessions_intraday_ 中有新数据可用?触发某种事件?我是否使用表格的最后修改日期(但我需要跟踪要运行的时间窗口)?

在此先感谢您的帮助,凯文

最佳答案

表上的最后修改时间可能是这里最好的方法(并且比发出探测查询更便宜)。我不相信有任何其他信号传输机制可以传输数据。

如果您的完整查询运行速度比轮询间隔快,您可能只使用派生表的修改时间来保存数据(并在输出表比输入表旧时更新)。

Metadata queries是免费的,因此您甚至可以将大部分逻辑嵌入到查询中:

SELECT
(
SELECT
MAX(last_modified_time)
FROM
`YOUR_INPUT_DATASET.__TABLES__`) >
(
SELECT
MAX(last_modified_time)
FROM
`YOUR_OUTPUT_DATASET.__TABLES__`) need_update

如果您的输出数据集中有多个表,您可以更有选择性(使用 WHERE 子句)来过滤您检查的表。

如果你需要一个方便的地方来运行这个调度逻辑(不是开发人员的工作站),你可以考虑 one of my previous answers . (简短版本:Apps 脚本非常简洁)

您还可以考虑在 BigQuery 的 public issue tracker 上提交“物化 View ”或“计划查询”的功能请求。 .快速浏览了一下,我没有看到这方面的现有条目,但我过去确实听到过类似的请求。

我不确定 Google Analytics 团队如何处理功能请求,但在交付新一批 Analytics 数据时收到 pubsub 通知似乎也很有用。

关于google-bigquery - 如何有效地判断 ga_sessions_intraday_ 中有可用的新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39259789/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com