初学者 GA 导出 bigquery 问题

Posted

技术标签:

【中文标题】初学者 GA 导出 bigquery 问题【英文标题】:Beginner GA export bigquery questions 【发布时间】:2015-02-28 01:24:28 【问题描述】:

我是 bigquery 的新手。有几个菜鸟问题--

有什么方法可以做一个 select top x * 查询,布局有点像表格详细信息中的预览窗格?当您可以直观地看到数据和结构时,会更容易理解。

您可以通过连接 VisitId 和 FullVisitorId 创建一个唯一的访问 ID。为什么这个匹配的会话数不匹配?从定义上讲,唯一身份访问与会话有何不同?

谢谢!

【问题讨论】:

您可以对查询执行“限制”,但我不会这样做。无论如何,Limit 实际上会扫描您的整个表,因此它将花费您整个表的处理数据的价值。关于会话的事情,我不清楚......你为什么要连接两者?访问 ID 已经不是唯一的了? Hi Patrice :) 所以没有好的推荐方法来查看 where 语句的完整结果?这是标准 GA 导出模式:support.google.com/analytics/answer/3437719?hl=en 这就是访问 id 的含义:“此访问的标识符。这是通常存储为 _utmb cookie 的值的一部分。这仅对访问者是唯一的。对于完全唯一的访问 id,您应该使用 fullVisitorId 和 visitId 的组合。"但是,当我测试会话的 count(*) 行并计算不同的 concac vistor+visit id 时,它们不匹配(会话更高)。 嘿^^。嗯,这确实看起来很奇怪。你能拍下你的查询,让我看看发生了什么吗?您措辞的方式似乎不同,会话应该相同。 当我从 [mydata.ga_sessions_20150125] 运行 select count(distinct string(visitid)+fullvisitorid) 时,我得到 120 万行,执行 count(*) 会产生 130 万行。伦敦头盔数据确实匹配(63 次独立访问和 63 次会话),但这比我的数据集小得多。我还认为唯一访问和会话是相同的——但由于它们不是,我想知道谷歌对它们的定义差异是什么。 奇怪的是,当我运行 select string(visitid)+fullvisitorid as a, count(*) as records from [mydata.ga_sessions_20150125] group by a order by records desc 时,它给了我正确的行记录(1.3M),记录列全为 1。我觉得我一定错过了一些明显的东西! 【参考方案1】:

COUNT(DISTINCT field[, N]) 是一个统计近似值。对于小于 N 的计数,它是精确的。

要获得大值的准确计数,请在 group each by 上使用 count(*),但是这可能是一个慢得多的查询。

在https://cloud.google.com/bigquery/query-reference 上查看COUNT 文档。

【讨论】:

以上是关于初学者 GA 导出 bigquery 问题的主要内容,如果未能解决你的问题,请参考以下文章

GA 到 BigQuery 导出架构中的“hits.publisher.adsRevenue”字段是啥意思?

Bigquery GA360 每日导出:查找最早的每日表

bigQuery 和 GA-Premium 集成:从 GA 中的未过滤视图导出数据时,如何在 bigQuery 中使用 IP 过滤器(以排除内部流量)

在导出到 BigQuery 的 FirebaseAnalytics 数据中,有些事件的 ga_session_id 为空

在 Google 跟踪代码管理器中使用 GA Bigquery 导出架构变量

谷歌分析导出设置到 Bigquery