【问题标题】:Bigquery and Pushshift: Time range decorator is not supported on partitioned tablesBigquery 和 Pushshift:分区表不支持时间范围装饰器
【发布时间】:2018-08-29 01:05:19
【问题描述】:

我正在关注https://pushshift.io/using-bigquery-with-reddit-data 的帖子,该帖子提供了一个示例 SQL 查询:

SELECT * FROM [pushshift:rt_reddit.comments@-60000-] LIMIT 1;

这样我得到以下错误:

分区表不支持时间范围装饰器

对我来说,该页面上的其他查询也失败了。写完之后有什么变化吗?

【问题讨论】:

    标签: sql google-bigquery


    【解决方案1】:

    自创建该帖子以来,作者似乎已将表转换为使用基于时间的分区。您可以在created_utc 列上使用过滤器来限制读取的数据量,例如:

    SELECT * FROM pushshift.rt_reddit.comments WHERE DATE(created_utc) = '2018-06-26';
    

    如果您点击 BigQuery UI 中查询编辑器右侧和下方的绿色复选标记,您应该会看到类似 Processing up to 676.57 MB. 的内容,它比整个表格的大小要小得多。再举一个例子,如果您想在 cmets 中搜索特定的单词,如该页面上的一些查询所示,您可以编写如下查询:

    SELECT COUNT(*), subreddit
    FROM pushshift.rt_reddit.comments
    WHERE created_utc BETWEEN '2018-05-01' AND '2018-05-31' AND
      LOWER(body) LIKE '%google%'
    GROUP BY subreddit
    ORDER BY 1 DESC;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-05
      相关资源
      最近更新 更多