Operator.IN 在 Google 数据存储中
Operator.IN in Google Datastore
根据Datastore Queries有Operator.IN
关键字,允许在单个请求中指定多个查询值。
然而,它在 gcloud-java-datastore:0.2.2
中似乎不存在。
最小化多个单一请求的往返时间的解决方法是什么?
是否有允许并行查询的数量限制?
在 Datastore Queries 的更新文档中 Operator.IN
不再存在。
IN 运算符是 Python NDB 客户端库的客户端功能,它不是原生云数据存储功能。
在幕后,客户端库通过 IN 子句拆分查询并为每个值发出单独的查询。然后它会在客户端将所有结果合并在一起为您提供结果。
由于它是一个客户端功能,您不会认为其他查询功能不能真正与它一起使用,例如 paging/cursors。
备选
如果您要为 IN 子句发布静态值列表(例如 'NEW'、'OPEN'、'ASSIGNED'),请考虑创建一个布尔字段,该字段在写入时设置 -预计算实体总 IN 子句的时间(例如 'is_active')。
这将在 NDB 以外的客户端库中执行得更好并且工作。
根据Datastore Queries有Operator.IN
关键字,允许在单个请求中指定多个查询值。
然而,它在 gcloud-java-datastore:0.2.2
中似乎不存在。
最小化多个单一请求的往返时间的解决方法是什么?
是否有允许并行查询的数量限制?
在 Datastore Queries 的更新文档中 Operator.IN
不再存在。
IN 运算符是 Python NDB 客户端库的客户端功能,它不是原生云数据存储功能。
在幕后,客户端库通过 IN 子句拆分查询并为每个值发出单独的查询。然后它会在客户端将所有结果合并在一起为您提供结果。
由于它是一个客户端功能,您不会认为其他查询功能不能真正与它一起使用,例如 paging/cursors。
备选
如果您要为 IN 子句发布静态值列表(例如 'NEW'、'OPEN'、'ASSIGNED'),请考虑创建一个布尔字段,该字段在写入时设置 -预计算实体总 IN 子句的时间(例如 'is_active')。
这将在 NDB 以外的客户端库中执行得更好并且工作。