Google app engine BigQuery表装饰器与AppEngine请求日志时间戳

Google app engine BigQuery表装饰器与AppEngine请求日志时间戳,google-app-engine,timestamp,google-bigquery,decorator,google-cloud-stackdriver,Google App Engine,Timestamp,Google Bigquery,Decorator,Google Cloud Stackdriver,我试图在BigQuery中的一个AppEngine RequestLog表中使用表装饰器范围。根据文档,日志条目是LogEntry类型的对象 有两列timestamp和receiveTimestamp。第一列的描述是“日志项描述的事件发生的时间”,第二列的描述是“Stackdriver日志记录收到日志项的时间” 我尝试使用时间戳列和表装饰器范围来比较表查询表中的时间范围和记录数 --select timestamp_to_msec(timestamp('2017-06-22 01:00:00')

我试图在BigQuery中的一个AppEngine RequestLog表中使用表装饰器范围。根据文档,日志条目是LogEntry类型的对象

有两列timestamp和receiveTimestamp。第一列的描述是“日志项描述的事件发生的时间”,第二列的描述是“Stackdriver日志记录收到日志项的时间”

我尝试使用时间戳列和表装饰器范围来比较表查询表中的时间范围和记录数

--select timestamp_to_msec(timestamp('2017-06-22 01:00:00')) as time1,
         timestamp_to_msec(date_add(timestamp('2017-06-22 01:00:00'), 1, 'hour')) as time2
  SELECT count(*), min(timestamp), max(timestamp)
  FROM [project_id:dataset.appengine_googleapis_com_request_log_20170622@1498093200000-1498096800000]
查询我在哪里使用时间戳列

SELECT count(*), MIN( timestamp ), max( timestamp )
FROM [project_id:dataset.appengine_googleapis_com_request_log_20170622]
WHERE timestamp between timestamp('2017-06-22 01:00:00') and 
date_add(timestamp('2017-06-22 01:00:00'), 1, 'hour')
查询结果

1698320 | 2017-06-22 01:00:00 UTC | 2017-06-22 01:59:59 UTC

查询我在哪里使用表装饰器范围

--select timestamp_to_msec(timestamp('2017-06-22 01:00:00')) as time1,
         timestamp_to_msec(date_add(timestamp('2017-06-22 01:00:00'), 1, 'hour')) as time2
  SELECT count(*), min(timestamp), max(timestamp)
  FROM [project_id:dataset.appengine_googleapis_com_request_log_20170622@1498093200000-1498096800000]
查询结果

1534754 | 2017-06-22 00:40:45 UTC | 2017-06-22 01:35:59 UTC

我没有得到相同的日期范围和相同数量的记录。这三个时间戳分别是什么意思?桌子装饰器是如何在引擎盖下工作的?(BigQuery在创建表时是否创建表的快照)

表装饰器文档解释说它使用快照。但它“在引用表的快照”--表示数据被摄取到BigQuery中的时间。但是,这与表中的时间戳字段完全无关,因为这些字段表示相关事件发生的时间,而不是该字段被接收到bigquery中的时间