Bigquery 和 Pushshift:分区表不支持时间范围修饰器



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

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

有了这个,我得到以下错误:

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

对我来说,该页面上的其他查询也失败了。自那篇文章写成以来有什么变化吗?

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

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

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

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;

最新更新