查询为SELECT COUNT(*) FROM [table.click] WHERE time >= DATE_ADD('2015-03-25 06:00:00', -9, 'HOUR') AND time < DATE_ADD('2015-03-25 07:00:00', -9, 'HOUR')
我想获取时间在6到7之间的记录。
[07:25:57] $ bq query "SELECT COUNT(*) FROM [table.click] WHERE time >= DATE_ADD('2015-03-25 06:00:00', -9, 'HOUR') AND time < DATE_ADD('2015-03-25 07:00:00', -9, 'HOUR')"
Waiting on bqjob_r5e92dc9eca9622ed_0000014c4de50d59_1 ... (0s) Current status: DONE
+-----+
| f0_ |
+-----+
| 0 |
+-----+`
但我导入数据的过程已经工作了很长时间,我确认这个过程没有问题(= 6到7之间的流媒体导入效果很好)。
经过10分钟后,我执行了完全相同的查询。
[07:35:15]$ bq query "SELECT COUNT(*) FROM [table.click] WHERE time >= DATE_ADD('2015-03-25 06:00:00', -9, 'HOUR') AND time < DATE_ADD('2015-03-25 07:00:00', -9, 'HOUR')"
Waiting on bqjob_r338acff11f068b44_0000014c4ded45c5_1 ... (2s) Current status: DONE
+------+
| f0_ |
+------+
| 1954 |
+------+`
这次效果很好!之后,BigQuery一直在返回1954条记录,如下所示。
[10:49:59]$ bq query "SELECT COUNT(*) FROM [table.click] WHERE time >= DATE_ADD('2015-03-25 06:00:00', -9, 'HOUR') AND time < DATE_ADD('2015-03-25 07:00:00', -9, 'HOUR')"
Waiting on bqjob_r5693edc7523c1ca2_0000014c4e9f4f52_1 ... (0s) Current status: DONE
+------+
| f0_ |
+------+
| 1954 |
+------+`
Google BigQuery same queries give different results是一个类似的问题帖子,但是the BigQuery team
做出了回答,问题已经解决,因此我决定发布此问题。
这个问题发生了两次。第一次是2015-03-24 22:00:00 JST ~ 2015-03-24 23:00:00 JST
,第二次是2015-03-25 06:00:00 JST ~ 2015-03-25 07:00:00 JST
。
我附加了一个Google Cloud Status at the time that happened
的捕获,显示全局没有BigQuery的系统问题。
答案 0 :(得分:1)
正如Pentium10指出的那样,你似乎被流数据延迟所困扰。
似乎您的第一个查询在流媒体插件传播到处之前点击了您的数据。这是正常的。似乎不是陈旧数据的问题,正如Pentium所指出的那样,等待流数据后的延迟。 10分钟似乎有点长,但我不知道实际问题在哪里。