有没有一种方法可以查询 Google AppEngine Search API 以查找字段至少包含一个搜索项的文档?
Is there a way to query Google AppEngine Search API for documents where a field contains at least one of the search items?
例如,假设我们在数据存储中有 3 个动物园。
(id=23, animals=["Horse", "Elephant", "Giraffe"]
(id=42, animals=["Alpaca", "Turtle", "Panda"]
(id=77, animals=["Wolf", "Alligator", "Tiger"]
我想查询包含至少一种以下动物的动物园:"Horse", "Elephant", "Alpaca"
。我需要此查询 return 动物园 23 和 42,但不是动物园 77。
到目前为止尝试过:
animals: "Horse" OR animals: "Elephant" OR animals: "Alpaca"
适用于较小的查询,但在现实生活中,像这样构造的查询很容易超过 Google. 施加的 2000 字节查询大小限制
("Horse" OR "Elephant" OR "Alpaca") IN animals
returns 0 个结果。
animals IN ("Horse" OR "Elephant" OR "Alpaca")
returns 0 个结果。
限制:必须是固定数量的查询,最好是单个查询。查询数量随着搜索项数量的增加而增长的解决方案将无法扩展,并且很容易导致来自用户的每个 HTTP 请求产生数百个数据存储区查询。这是不可接受的。
有什么实现方法的建议吗?
animals: ("Horse" OR "Elephant" OR "Alpaca")
例如,假设我们在数据存储中有 3 个动物园。
(id=23, animals=["Horse", "Elephant", "Giraffe"]
(id=42, animals=["Alpaca", "Turtle", "Panda"]
(id=77, animals=["Wolf", "Alligator", "Tiger"]
我想查询包含至少一种以下动物的动物园:"Horse", "Elephant", "Alpaca"
。我需要此查询 return 动物园 23 和 42,但不是动物园 77。
到目前为止尝试过:
animals: "Horse" OR animals: "Elephant" OR animals: "Alpaca"
适用于较小的查询,但在现实生活中,像这样构造的查询很容易超过 Google. 施加的 2000 字节查询大小限制
("Horse" OR "Elephant" OR "Alpaca") IN animals
returns 0 个结果。animals IN ("Horse" OR "Elephant" OR "Alpaca")
returns 0 个结果。
限制:必须是固定数量的查询,最好是单个查询。查询数量随着搜索项数量的增加而增长的解决方案将无法扩展,并且很容易导致来自用户的每个 HTTP 请求产生数百个数据存储区查询。这是不可接受的。
有什么实现方法的建议吗?
animals: ("Horse" OR "Elephant" OR "Alpaca")