查询Google Cloud Datastore以检索匹配的结果

我正在使用Google Cloud Datastore来保存我的应用程序数据。 我必须添加一个查询来获得与Name,Brand或Sku匹配的所有结果。

查询数据与字段之一是返回我的logging,但一起使用所有字段返回我错误。

查询:

const term = "My Red"; const q = gstore.createQuery(req.params.orgId, "Variant") .filter('brand', '=', term) .filter('sku', '=', term) .limit(10); 

错误:

{“msec”:435.96913800016046,“error”:“找不到匹配的索引。build议索引是:
– 种类:变体
特性:
– 名牌
– 名字:sku
“ ”数据“:{ ”代码“:412, ”元数据“:{ ”_ internal_repr“:{}}, ”isBoom“:真 ”isServer“:真, ”数据“:空 ”则输出“:{”状态码“:500,”有效载荷“:{”statusCode“:500,”错误“:”内部服务器错误“,”消息“:”发生内部服务器错误“}”headers“:{}}}}内部错误

此外,我想执行OR操作来获得匹配的结果,如上所述将返回与AND操作的数据。 请帮我find正确的path,以达到预期的效果。

预先感谢,让我知道如果有什么不清楚。

该错误表示相应查询所需的组合索引不处于“正在Serving状态。

这意味着它不是创build/部署的,或者是最近部署的,仍在构build中。

组合索引必须专门创build并部署在您的应用程序中。

如果你没有创build它,你需要这样做。 错误消息指示索引configuration需要的内容。 如果您使用的是开发服务器,它可能会自动创build,但您仍然需要部署它。

有关更多详细信息,请参阅索引文档。

如果您最近部署了组合索引,请注意,在构build匹配索引之前,可能需要花费大量的时间,具体取决于数据存储中已经存在多less实体。 您可以在开发人员控制台的“ 索引”页面上检查索引编译的状态