使用窗口化时 BigQuery 不会返回结果

Posted

技术标签:

【中文标题】使用窗口化时 BigQuery 不会返回结果【英文标题】:BigQuery won't return results when using windowing 【发布时间】:2015-04-01 23:44:45 【问题描述】:

我正在尝试使用 BigQuery 获取每台设备发送的最新令牌。我的测试查询有效,但是当我删除限制子句时,我等待了 30 多分钟并没有得到任何结果。

SELECT idfa, token, app_id, ds, stamp
FROM
  (
  SELECT idfa, token, app_id, ds, stamp
    , max(stamp) over(partition by idfa, app_id) as max_stamp
  FROM islot.token limit 300
  )
WHERE max_stamp = stamp;

我试过先对结果排序,然后分区,按天分区,然后按邮票,但仍然没有成功。我知道如何让这个查询在 RedShift 或 Hadoop 中工作,因为我可以利用索引并检查解释计划。

关于让 BigQuery 真正返回结果的任何提示?

【问题讨论】:

【参考方案1】:

我的 idfa 列太稀疏了。添加以下修复它。

WHERE idfa != '' and idfa != '00000000-0000-0000-0000-000000000000'

【讨论】:

以上是关于使用窗口化时 BigQuery 不会返回结果的主要内容,如果未能解决你的问题,请参考以下文章

BigQuery 命令行工具返回不同的结果

BigQuery 未准确返回结果

如何使用 Python 将 bigquery 返回的结果转换为 Json 格式?

有没有办法改变这个 BigQuery 自联接以使用窗口函数?

如何将 bigquery 返回的结果转换为 Json

有没有办法使用 Python 将 bigquery 返回的结果转换为 Json 格式?