gpt4 book ai didi

google-analytics - Hive 表中 Google Analytics Report 和 BigQuery Data 的统计数据差异

转载 作者:行者123 更新时间:2023-12-03 15:53:14 26 4
gpt4 key购买 nike

我设置了一个 Google Analytics 高级帐户来监控网站和移动应用程序的用户事件。

来自 GA 的原始数据存储在 BigQuery 表中。

但是,我注意到我在 GA 报告中看到的统计数据与我在查询 BigQuery 表时看到的统计数据完全不同。

我了解 GA 报告显示汇总数据,可能还有抽样数据。 Bigquery 表中的原始数据是 session /命中级数据。

但我仍然不确定我是否理解统计数据可能不同的原因。

如果有人为我澄清这一点,我将不胜感激。

提前致谢。

更新 1:

我将 Bigquery 中的原始数据导出到我的 Hadoop 集群中。数据存储在配置单元表中。我在导出之前展平了所有嵌套和重复的字段。

这是我在 Hive 表中的原始数据上运行的 Hive 查询:

SELECT
date as VisitDate,
count(distinct fullvisitorid) as CountVisitors,
SUM(totals_visits) as SumVisits,
SUM(totals_pageviews) AS PVs
FROM
bigquerydata
WHERE
fullvisitorid IS NOT NULL
GROUP BY
date
ORDER BY
VisitDate DESC

A) 以 2 月 9 日为 VisitDate,我从该查询中得到以下结果:
i) CountVisitors= 1,074,323
ii) SumVisits= 48,990,198
iii) PVs= 1,122,841,424

VS

B) 获取相同的 VisitDate 并从 GA 报告中获取相同的统计数据:
i) Users count = 1,549,757
ii) Number of pageviews = 11,604,449 (Huge difference when compared to A(iii))

在上面的 hive 查询中,我是否使用了错误的字段或以错误的方式处理字段?只是想弄清楚为什么我在数字上有这种差异。

更新 2(遵循@Felipe Hoffa 的建议):

这就是我在将结果导出到 GCS 然后到 Hadoop 集群之前在我的 Python 代码中展平表的方式:
queryString = 'SELECT * FROM flatten(flatten(flatten(flatten(flatten(flatten([' + TABLE_NAME + '],hits),hits.product),hits.promotion),hits.customVariables), hits.customDimensions), hits.customMetrics)'

我理解您所说的扁平化导致重复的网页浏览量以及每次重复都会导致最终的错误添加。

我在 Bigquery 表而不是我的 Hive 表上尝试了相同的查询(来自 Update1)。这些数字与 Google Analytics(分析)仪表板上的数字相匹配。

但是,假设 Hive 表是我所拥有的全部,并且由于展平而具有那些重复的字段。但是无论如何我仍然可以修复我的 hive 查询以匹配来自 Google Analytics 仪表板的统计信息吗?

从逻辑上讲,如果由于展平而出现重复字段..我不能在我的 Hive 表中反转相同的内容吗?如果您认为我可以逆转,您对我如何继续进行有什么建议吗?

非常感谢您!

最佳答案

您可以在 BigQuery 中运行相同的查询,而不是在导出到 Hive 的数据上运行吗?

我的猜测:“数据存储在一个 hive 表中。我在导出之前展平了所有嵌套和重复的字段。”扁平化时 - 您是否多次重复浏览量,每次重复都会进入最后的错误添加?

请注意在展平行时数据如何重复:

SELECT col, x FROM (
SELECT "wrong" col, SUM(totals.pageviews) x
FROM (FLATTEN ([google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910], hits))
), (
SELECT "correct" col, SUM(totals.pageviews) x
FROM [google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910]
)


col x
wrong 2262
correct 249

更新给定问题的“更新 2”:

由于 BigQuery 工作正常,这是一个 Hive 问题,您应该添加该标签以获得相关答案。

尽管如此,这就是我正确地使用 BigQuery 对以前重复的行进行重复数据删除的方式:
SELECT SUM(pv)
FROM (
SELECT visitId, MAX(totals.pageviews) pv
FROM (FLATTEN ([google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910], hits))
GROUP EACH BY 1
)

关于google-analytics - Hive 表中 Google Analytics Report 和 BigQuery Data 的统计数据差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28821865/

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