0

开始学习 FusionTable API。我有一个相当小的“Hello World”示例 Google FusionTable,其中包含约 32,000 条记录。但是简单的查询似乎返回了明显错误的结果,我想知道我是否完全错过了某些东西,或者有一个我不知道的限制?

使用此表 ID使用Online FusionTable API SQL 客户端尝试此Source 表:

1xxJtCuJ8V7D6nTEOdeNPGS7Q--VdugQqLtjjYgQ

SELECT COUNT(SEX) FROM 4546155返回32,778

SELECT SEX, COUNT() FROM 4546155 GROUP BY SEX返回:

[table] => object
  [cols] => object
     [0] => SEX
     [1] => count()
  [rows] => object
     [0] => object
         [0] => 1
         [1] => 5431
     [1] => object
         [0] => 2
         [1] => 4025

请注意,5431 + 4025 = 9456,而不是 32,778。我本来预计分别为 18,876 和 13,902,总和为 32,778:

系统是否会在源表中的 10,000 条记录处静默停止聚合查询?有什么建议么?

4

1 回答 1

0

我相信 FT 正在缓存查询结果,如果查询首先在不完整的数据上运行,这些缓存可能是错误的。

我在上传数据后运行测试的字段(例如 SEX、ETHUN)查询 - 但在计数器说“100% 完成”之前 - 立即返回(< 0.1 秒),结果看起来像是基于一半数据。虽然对其他字段(例如 COPD、ASTHMA)的类似查询返回缓慢(10-30 秒或更长时间)并返回正确结果(或超时并出现 503 错误),然后返回正确结果,然后立即返回。

于 2012-07-18T17:19:57.503 回答