有没有一种方法可以查询Google AppEngine搜索API中包含至少一个搜索项的字段的文档



例如,假设数据存储中有3个动物园。

  • (id=23, animals=["Horse", "Elephant", "Giraffe"]
  • (id=42, animals=["Alpaca", "Turtle", "Panda"]
  • (id=77, animals=["Wolf", "Alligator", "Tiger"]

我想查询至少包含以下动物之一的动物园:"Horse", "Elephant", "Alpaca"。我需要这个查询来返回动物园23和42,但不返回动物园77。

迄今为止已尝试:

  • animals: "Horse" OR animals: "Elephant" OR animals: "Alpaca"适用于较小的查询,但在实际生活中,这样构建的查询很容易超过谷歌规定的2000字节查询大小限制
  • ("Horse" OR "Elephant" OR "Alpaca") IN animals返回0个结果
  • animals IN ("Horse" OR "Elephant" OR "Alpaca")返回0个结果

Restriction:必须是固定数量的查询,最好是单个查询。查询量随着搜索项的数量而增长的解决方案不会扩展,并且很容易导致用户每次HTTP请求都有数百个数据存储查询。这是不可接受的。

如何实现这一点有什么建议吗?

animals: ("Horse" OR "Elephant" OR "Alpaca")

最新更新